Я пытаюсь создать кнопки с заголовками, которые бы изменяли их ширину, высоту и размер шрифта текста заголовка в зависимости от устройства iOS (автоматическое масштабирование).Я использую Xcode 10. Кодирование Swift.
Вот простой пример: я создал в IB красную кнопку, которая покрывает весь экран (верхний, нижний, ведущий и конечный ограничения установлены в 0) с заголовком "Кнопка «в центре» с размером шрифта, установленным на 350. Название iPad будет идеально соответствовать ширине 12,9-дюймового iPad (см. Рис.).
Я ввел код FitToWidth следующим образом:
class ViewController: UIViewController {
@IBOutlet weak var button: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
button.titleLabel?.adjustsFontSizeToFitWidth = true
button.titleLabel?.minimumScaleFactor = 0.1
}
Когда я запускаю код на устройстве с более низким разрешением экрана, чем у iPad 12,9 ", я вижу, что заголовок кнопки масштабируется и соответствует ширине экрана, но смещается вниз (см. Фото).
моделирование iPad 12.9
моделирование iPhone SE
Что мне не хватает?
Мне нужно, чтобы текст заголовка располагался в центре кнопки, как я это делал в IB.Я пробовал различные ограничения, примененные к кнопке, но ничего не получилось.