不同设备的单一类别中的iOS不同字体大小

在iOS 8中,我们可以为每个大小类设计不同的UI布局。我正在面对的问题是,我设计了一个紧凑宽度和常规高度(所有iPhone的尺寸类别)的布局,但我希望保持3.5和4英寸设备(iPhone 4和5)的标签的字体大小),然后4.7英寸(iPhone 6)相对较大,5.5寸(iPhone 6 Plus)设备更大。我搜索过但无法找到解决方案来设置不同字体大小的不同设备在同一大小的类。
自动布局和大小类别无法针对特定的屏幕尺寸,因为它们不适用于此。苹果不希望您定位设备,以帮助您更好地维护您的代码

说出一个新的iPhone型号,使用自动布局和大小类,您不必手动修复所有约束,使您的应用程序与此较新的设备兼容。但是,您仍然可以使用以下代码设置UILabel的字体大小:

if UIScreen.mainScreen().bounds.size.height == 480 {
    // iPhone 4
    label.font = label.font.fontWithSize(20)     
} else if UIScreen.mainScreen().bounds.size.height == 568 {
    // IPhone 5
    label.font = label.font.fontWithSize(20)
} else if UIScreen.mainScreen().bounds.size.width == 375 {
    // iPhone 6
    label.font = label.font.fontWithSize(20)
} else if UIScreen.mainScreen().bounds.size.width == 414 {
    // iPhone 6+
    label.font = label.font.fontWithSize(20)
} else if UIScreen.mainScreen().bounds.size.width == 768 {
    // iPad
    label.font = label.font.fontWithSize(20)
}

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...