xcode 如何根据屏幕大小定义按钮的字体
How to define the button's font based on the screen size in xcode
我不认为有一种机制可以根据屏幕尺寸定义按钮的字体?
以下是滑动菜单问题的示例。 iPhone 7 第一:
和 SE:
所以我需要获取设备型号并计算要以编程方式应用的字体?
您可以使用尺寸 类。
- 在属性检查器中单击字体附近的 +。
- 为IPAD选择正则和正则
- 或为 Iphone 选择紧凑宽度和常规高度。
- 或者您可以简单地以编程方式完成
对于您使用以下代码的按钮
btn.titleLabel?.numberOfLines = 1
btn.titleLabel?.adjustsFontSizeToFitWidth = true
btn.titleLabel?.lineBreakMode = .byClipping
输出:
if UIScreen.mainScreen().bounds.size.height == 480 {
// iPhone 4
mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20)
} else if UIScreen.mainScreen().bounds.size.height == 568 {
// IPhone 5
mybutton.titleLabel.fontt = mybutton.titleLabel.font.fontWithSize(20)
} else if UIScreen.mainScreen().bounds.size.width == 375 {
// iPhone 6
mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20)
} else if UIScreen.mainScreen().bounds.size.width == 414 {
// iPhone 6+
mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20)
} else if UIScreen.mainScreen().bounds.size.width == 768 {
// iPad
mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20)
}
我正在使用 Device Pod 检查设备。
https://github.com/Ekhoo/Device
之后
switch Device.size() {
case .screen3_5Inch:
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 20)
case .screen4Inch:
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 22))
case .screen4_7Inch:
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 23)
case .screen5_5Inch:
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 25)
case .screen5_8Inch:
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 28)
default:
print("Unknown size")
}
我不认为有一种机制可以根据屏幕尺寸定义按钮的字体?
以下是滑动菜单问题的示例。 iPhone 7 第一:
和 SE:
所以我需要获取设备型号并计算要以编程方式应用的字体?
您可以使用尺寸 类。
- 在属性检查器中单击字体附近的 +。
- 为IPAD选择正则和正则
- 或为 Iphone 选择紧凑宽度和常规高度。
- 或者您可以简单地以编程方式完成
对于您使用以下代码的按钮
btn.titleLabel?.numberOfLines = 1
btn.titleLabel?.adjustsFontSizeToFitWidth = true
btn.titleLabel?.lineBreakMode = .byClipping
输出:
if UIScreen.mainScreen().bounds.size.height == 480 {
// iPhone 4
mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20)
} else if UIScreen.mainScreen().bounds.size.height == 568 {
// IPhone 5
mybutton.titleLabel.fontt = mybutton.titleLabel.font.fontWithSize(20)
} else if UIScreen.mainScreen().bounds.size.width == 375 {
// iPhone 6
mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20)
} else if UIScreen.mainScreen().bounds.size.width == 414 {
// iPhone 6+
mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20)
} else if UIScreen.mainScreen().bounds.size.width == 768 {
// iPad
mybutton.titleLabel.font = mybutton.titleLabel.font.fontWithSize(20)
}
我正在使用 Device Pod 检查设备。 https://github.com/Ekhoo/Device 之后
switch Device.size() {
case .screen3_5Inch:
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 20)
case .screen4Inch:
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 22))
case .screen4_7Inch:
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 23)
case .screen5_5Inch:
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 25)
case .screen5_8Inch:
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 28)
default:
print("Unknown size")
}