【问题标题】:Different font size on Different devices in same size class相同大小类别的不同设备上的不同字体大小
【发布时间】:2015-10-29 05:22:24
【问题描述】:

您好,我是尺码课程的新手。据我所知,Apple 为 Portrait iPhone 4s、5、6 和 6+ 提供了一种尺寸等级(紧凑型 + 普通型)。那么如何通过情节提要或任何其他方式在这三种不同的设备中提供不同的字体大小。 谢谢 快乐编码

【问题讨论】:

    标签: ios iphone autolayout size-classes


    【解决方案1】:

    正如您在问题中提到的,您需要为不同的设备提供单独的字体大小。

    第一件事是我们无法在故事板上实现它。

    您需要使用 If 条件和检查设备手动分配不同的字体大小。

    例如:

    if ([[UIScreen mainScreen] bounds].size.height == 568) {
        // Assign Font size for iPhone 5
    }else if ([[UIScreen mainScreen] bounds].size.height == 667){
        // Assign Font size for iPhone 6
    }else if ([[UIScreen mainScreen] bounds].size.height == 736){
        // Assign Font size for iPhone 6+
    }else if ([[UIScreen mainScreen] bounds].size.height == 480){
        // Assign Font size for iPhone 4s
    }
    

    注意:

    • 您可以创建一个单独的 Font 类,如果您已经这样做了,那么您只需在该类中添加上述验证即可。

    【讨论】:

      【解决方案2】:

      AutolayoutSizeClasses 不会针对特定设备,因此您必须以编程方式设置字体大小。您可以使用UIScreen.mainScreen().bounds.size.height 检查设备的大小并相应地设置字体大小。这个solution 会让你更清楚。

      【讨论】:

      • 谢谢 所以 Storyboard 没有解决方案。坦率地说,如果我必须为不同的设备使用 if 条件那么为什么我使用自动布局或大小类。
      • 因为正如我所说,使用了自动布局,因此我们可以为所有设备使用相同的故事板,因此它们不会针对特定设备
      猜你喜欢
      • 2016-09-19
      • 2015-03-20
      • 1970-01-01
      • 2021-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-14
      • 2017-09-15
      相关资源
      最近更新 更多