14 ответов:
использовать
titleLabelвместо. Элементfontсвойство обезличено в iOS 3.0. Он также не работает в Objective-C.titleLabelметка используется для отображения заголовка наUIButton.myButton.titleLabel?.font = UIFont(name: YourfontName, size: 20)однако при настройке текста заголовка вы должны использовать только
setTitle:forControlState:. Не используйтеtitleLabelустановить любой текст для заголовка.
на Swift 3.0:
button.titleLabel?.font = UIFont.boldSystemFont(ofSize: 16)где " boldSystemFont "и" 16 " могут быть заменены вашим пользовательским шрифтом и размером.
С документация:
шрифт, используемый для отображения текста на кнопке. (устарел в iOS 3.0. Используйте
fontсвойстваtitleLabel.)
вам не нужно заставлять разворачивать метку заголовка, чтобы установить его.
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 20)Так как вы не используете titleLabel здесь, вы можете просто опционально использовать его, и если он равен нулю, это будет просто no-op.
Я также добавлю, как говорят другие люди, свойство шрифта устарело, и обязательно используйте
setTitle:forControlState:при создании текста заголовка.
Если у вас возникли проблемы размер шрифта (шрифт не реагирует на изменения размера)...
@codester имеет правильный код:
myButton.titleLabel!.font = UIFont(name: YourfontName, size: 20)однако, мой размер шрифта не меняется. Оказывается, я прошу шрифт, который не существует ("HelveticaNeue-Regular"). Это не вызывало сбоя, но, казалось, просто игнорировало это заявление шрифта из-за него. Как только я изменил шрифт на что-то, что существует, изменения на "size: x" сделали рендеринг.
вы должны пройти через
titleLabelсобственность.
button.titleLabel.fontThe
fontсвойство устарело с iOS 3.0.
посмотреть здесь.
вы должны установить шрифт заголовка кнопки вместо этого.
myButton.titleLabel!.font = UIFont(name: "...", 10)
этот способ не работает сейчас:
btn.titleLabel?.font = UIFont(name: "Helvetica", size:12)это работает:
btn.titleLabel?.font = UIFont.init(name: "Helvetica", size:12)
пример:
button.titleLabel?.font = UIFont(name: "HelveticaNeue-Bold", size: 12)
- если вы хотите использовать шрифт defaul из своей собственной семьи, используйте, например:"HelveticaNeue"
- если вы хотите указать семейный шрифт, используйте, например: "HelveticaNeue-Bold"
Если вы устанавливаете AttributedString в UIButton, то вы можете сделать следующее.
let attributedText = NSAttributedString(string: "Hello", attributes: [NSAttributedStringKey.font: UIFont(name: "Calibri", size: 19)]) okayButton.setAttributedTitle(attributedText, for: .normal)
эта работа для меня, спасибо. Я хочу изменить размер текста только не изменить имя шрифта.
var fontSizeButtonBig:Int = 30btnMenu9.titleLabel?.шрифт = .systemFont(ofSize: CGFloat (fontSizeButtonBig))
Если вам нужно изменить только размер ( Swift 4.0):
button.titleLabel?.font = button.titleLabel?.font.withSize(12)
Comments