xcode - 如何根据设备获取视图上的所有字体?

时间:2015-08-30 19:19:44

标签: ios swift uilabel

我正在尝试使约束更正,以便字体大小根据设备进行缩放。似乎当UILabel的垂直尺寸缩小时,缩放不会发生。缩放仅在水平尺寸改变时发生。我也试过修复宽高比,但在这种情况下文本不能垂直放入屏幕。

我希望所有文本都集中在灰色容器中,并根据容器的宽度进行缩放。

这就是我想要完成的事情:

这是我试图修改的xcode文件 - https://www.dropbox.com/sh/c1yx8gk2h8d1ycg/AACnSXUq2j3EiyCnsMHJIqxBa?dl=0

1 个答案:

答案 0 :(得分:0)

我的建议: 为您的项目创建自定义UILabel,UIButton,UITextField子类。

在这些课程中,您可以在初始化时调整字体大小。

在storyboard / xib / code中使用自定义类而不是标准类。

例如UILabel

这样的事情
- (void)awakeFromNib {
    [super awakeFromNib];
    CGFloat fontSizeMultiplier = 1;
    if (isPhone5) {
        fontSizeMultiplier = 1.1;
    } else if (isPhone6) {
        fontSizeMultiplier = 1.2;
    } else if (isPhone6Plus) {
        fontSizeMultiplier = 1.35;
    }
    self.font = [UIFont fontWithName:self.font.fontName size:self.font.pointSize * fontSizeMultiplier];
}