【问题标题】:how to change the font size of picker view in autolayout如何在自动布局中更改选择器视图的字体大小
【发布时间】:2018-07-28 16:17:55
【问题描述】:
我正在尝试修复我的选择器视图的自动布局,在 iPhone 上(紧凑宽度和常规高度)似乎还可以,但对于 iPad(常规宽度和常规高度),似乎是我的选择器字体的大小视图和 iPhone 一样,我希望 iPad 中选择器视图的字体大小大一点,我通常会为常规宽度和常规高度的字体大小添加自定义,但没有调整选择器字体大小的选项在界面生成器中查看。
我该怎么办?
【问题讨论】:
标签:
ios
autolayout
interface-builder
【解决方案1】:
这不能在 Interface Builder 中完成,您需要以编程方式完成。有点简单,就这样吧:
func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {
let pickerLabel = UILabel()
if UIDevice.current.userInterfaceIdiom == .pad {
pickerLabel.font = UIFont.systemFont(ofSize: 16)
pickerLabel.text = "Row \(row)"
} else if UIDevice.current.userInterfaceIdiom == .phone {
pickerLabel.font = UIFont.systemFont(ofSize: 14)
pickerLabel.text = "Row \(row)"
}
return pickerLabel
}
如果您使用的是pickerView titleForRow,则需要删除该功能才能使用viewForRow。