ios - 使用 UIAppearance 代理样式化 UILabel

标签 ios uilabel uifont uiappearance

我的应用程序中有许多 UILabel 元素,我正在寻找一种简单的方法来使用 UIAppearance 代理对象来设置它们的样式。我目前的方法是创建配备 UI_APPEARANCE_SELECTOR 装饰器的 UILabel 的不同子类,以便可以通过 [UILabelSubclass appearance] 调用访问。您可以找到我用作引用的来源 herehere . 问题是我不想设置字体大小,而只想设置依赖于 Storyboard 中定义的大小的字体系列。

如何在子类中设置它?

最佳答案

这是一个使用 UIAppearance 代理的简单类别:

@interface UILabel (FontName)

- (void)setFontName:(NSString *)name UI_APPEARANCE_SELECTOR;

@end


@implementation UILabel (FontName)

- (void)setFontName:(NSString *)name {
    self.font = [UIFont fontWithName:name size:self.font.pointSize];
}

@end

关于ios - 使用 UIAppearance 代理样式化 UILabel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17432432/

相关文章:

iphone - 从 UILabel 中删除最后一个值?

ios - 给定具有任何 pointSize 的 UIFont,如何计算适当的笔画宽度?

ios - fontSize 不能正常工作

ios - Bold Lucida Grande 的 UIFont 字体名称

ios - UIScrollView 不能出现

ios - 将主要的 AppleLanguage 更改为阿拉伯语,但仍然是 UIUserInterfaceLayoutDirectionLeftToRight

ios - UILabel AutoShrink 属性在 iOS 7 中不起作用

swift - 如何为堆栈中的多个标签创建函数?

ios - 如何从 Parse 导入我的数据?我想从类以外的用户类导入数据

ios - 使用 downloadTaskWithRequest 时 ResumeData 为零