【问题标题】:Change UIFont type globally respecting size and other atributtes in iOS在 iOS 中根据大小和其他属性全局更改字体类型
【发布时间】:2013-10-03 01:56:29
【问题描述】:

我有一个为 iOS6 开发的应用程序,我正在迁移到 iOS7

此界面使用了一种新字体:“HelveticaNeue-Light”

我想将我的系统字体全局替换为按钮、标签、文本视图、文本字段到这个,尊重所有其他属性(如果字体是粗体、斜体、字体大小......)

我该怎么做

我正在申请:

[[UILabel appearance] setFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:15.0f]];

但它会改变我所有字体的大小,如果我将大小设置为默认为零,我的字体就会消失

也试过这个:

[[UILabel appearance] setFont:[UIFont preferredFontForTextStyle:@"HelveticaNeue-Light"]];

但这会将我的字体更改为小尺寸,这也不是解决方案

提前感谢您的支持

【问题讨论】:

  • 你的问题到底是什么?
  • 我想将整个应用的字体类型更改为“HelveticaNeue-Light”,但仅此而已,其他属性(大小、粗体、斜体)我想保留它们

标签: ios fonts


【解决方案1】:

您可能需要子类 UILabel 并覆盖 awakeFromNib,如下所示:

@implementation MyUILabel

- (void)awakeFromNib
{
    [super awakeFromNib];
    self.font = [UIFont fontWithName:@"HelveticaNeue-Light" size:self.font.pointSize];
}
@end

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-30
    • 2017-12-23
    • 2018-05-19
    • 2023-01-19
    • 2021-04-29
    • 2021-10-15
    • 1970-01-01
    • 2015-10-07
    相关资源
    最近更新 更多