根据iPhone屏幕尺寸增加字体大小

时间:2017-09-18 08:03:28

标签: ios objective-c iphone ipad

如何自动更改所有按钮的字体大小,根据UIStoryboard中的设备(iphone / ipad)标记标题?如果我以编程方式更改我有不同的屏幕尺寸,我如何更改所有组件。有没有办法以正确的方式做到这一点?

3 个答案:

答案 0 :(得分:1)

试试Swift

创建功能。

func setCustomFont() -> CGFloat {

        //Current runable device/simulator width find
        let bounds = UIScreen.main.bounds
        let width = bounds.size.width

        // basewidth you have set like your base storybord is IPhoneSE this storybord width 320px.
        let baseWidth: CGFloat = 320

        // "14" font size is defult font size
        let fontSize = 14 * (width / baseWidth)

        return fontSize
    }

使用此功能。

yourbutton.titleLabel?.font = UIFont.init(name: "Helvetica", size: setCustomFont())

此类型您还设置了 UILabel UITextfield 字体,但这不适用于 UIButton

1.转到故事板选择UILabel / UITextfiled。

2.进入属性检查器

3. 检查动态类型选项自动调整字体。

答案 1 :(得分:0)

如果您正在使用界面构建器,则可以为元素设置单独的大小类并相应地进行调整

答案 2 :(得分:0)

您可以像这样使用AutoShrink:

yourButton.titleLabel.minimumScaleFactor = 0.5;
yourButton.titleLabel.adjustsFontSizeToFitWidth = YES;

这不会调整字体大小比我们设置的大。但它会根据手机大小增加到我们设置的最大尺寸。