我正在尝试在我的 iOS 应用
中应用自定义字体。我发现我可以使用:
[[UILabel appearance] setFont:[UIFont fontWithName:@"Proxima Nova" size:17.0]];
为所有
UILabels
设置默认字体和大小。但是,并非所有的UILabels
都具有相同的字体大小。在Set a default font for whole iOS app? ,有人有同样的顾虑,并被告知将大小参数设置为 0.0 以仅设置字体而不设置字体大小。
- 当我尝试这样做时,我的应用程序中的所有
UILabel
文本都消失了(因为显然iOS
按字面意思采用了 0.0 字体大小)。
关于如何通用设置字体而不是大小有什么建议吗?非常感谢!
最佳答案
- (void)viewDidLoad
{
[super viewDidLoad];
[self setFontFamily:@"FagoOfficeSans-Regular" forView:self.view andSubViews:YES];
}
-(void)setFontFamily:(NSString*)fontFamily forView:(UIView*)view andSubViews:(BOOL)isSubViews
{
if ([view isKindOfClass:[UILabel class]])
{
UILabel *lbl = (UILabel *)view;
[lbl setFont:[UIFont fontWithName:fontFamily size:[[lbl font] pointSize]]];
}
if (isSubViews)
{
for (UIView *sview in view.subviews)
{
[self setFontFamily:fontFamily forView:sview andSubViews:YES];
}
}
}
关于iphone - 如何在不指定大小的情况下为整个 iOS 应用程序设置自定义字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11907761/