iOS Foundation:系统字体大小

我想知道在iOS应用程序tableView的systemFontSize 总是相同的textLabel? 这是依赖于风格?

例如当我NSLog(@"%f",[UIFont systemFontSize]); 我得到14.0。 这总是一样的吗?

更重要的是:我怎样才能改变字体大小,而不改变字体家庭(假设我有我自己的字体在我的plist)。

我试过了:

 cell.textLabel.font = [UIFont fontWithName:@"Sansation-Light" size:12.0]; 

但UIFont总是希望我的字体名称/家庭。 我怎样才能避免这一点,并有一个字体到我的所有屏幕,只改变大小?

系统字体描述如下:

 + (CGFloat)labelFontSize;//Returns the standard font size used for labels. + (CGFloat)buttonFontSize;//Returns the standard font size used for buttons. + (CGFloat)smallSystemFontSize;//Returns the size of the standard small system font. + (CGFloat)systemFontSize;//Returns the size of the standard system font. 

你可以改变字体大小而不用像这样的字体家族:

 cell.textLabel.font = [UIFont systemFontOfSize:14]; 

系统字体大小并不总是相同的。 从iOS 7开始,有Dynamic Type 。 用户可以在系统设置中设置他们喜欢的字体大小。 这是应用程序现在获取和设置字体大小的推荐方式。

在界面生成器中,您可以在字体设置下select“ Body或“ Title 1 ”。 实际大小将根据用户的系统设置进行调整。 以编程方式使用UIFont.preferredFont(forTextStyle: ) 。 有关在iOS 10和Swift 3中执行此操作的更多详细信息,请参阅此文章 。

也可以看看

  • 印刷术文档
  • iOS的文本编程指南

只是添加到上面的答案。 上述方法是UIFont类的成员。 所以要获得默认的button字体大小…

 float defaultFontSize = [UIFont buttonFontSize];