У меня есть UITextField, который находится в определенном представлении с ограничениями. Работает без нареканий, если в тексте нет ни одного слова. Но, как вы можете видеть на изображении выше, если текст состоит только из одного слова, он не регулирует размер шрифта, чтобы соответствовать. Как я могу это исправить? Вот мой код:
class ViewController: UIViewController {
@IBOutlet weak var myView: UIView!
lazy var textInput : UITextField = {
let textInput = UITextField()
textInput.textAlignment = .center
textInput.translatesAutoresizingMaskIntoConstraints = false
textInput.minimumFontSize = 10;
textInput.adjustsFontSizeToFitWidth = true;
textInput.backgroundColor = .yellow
myView.addSubview(textInput)
var lConst = NSLayoutConstraint(item: textInput, attribute: .leading, relatedBy: .equal, toItem: myView, attribute: .leading, multiplier: 1, constant: 0)
var toConst = NSLayoutConstraint(item: textInput, attribute: .top, relatedBy: .equal, toItem: myView, attribute: .top, multiplier: 1, constant: 0)
var trConst = NSLayoutConstraint(item: textInput, attribute: .trailing, relatedBy: .equal, toItem: myView, attribute: .trailing, multiplier: 1, constant: 0)
var bConst = NSLayoutConstraint(item: textInput, attribute: .bottom, relatedBy: .equal, toItem: myView, attribute: .bottom, multiplier: 1, constant: 0)
NSLayoutConstraint.activate([lConst,toConst,trConst,bConst])
return textInput
} ()
override func viewDidLoad() {
super.viewDidLoad()
_ = textInput
textInput.font = UIFont.boldSystemFont(ofSize: 200)
// Do any additional setup after loading the view.
}
}