Saya mencoba mengubah font UIButton menggunakan Swift ...
myButton.font = UIFont(name: "...", 10)
Namun .font
sudah usang dan saya tidak yakin bagaimana cara mengubah font sebaliknya.
Ada saran?
Saya mencoba mengubah font UIButton menggunakan Swift ...
myButton.font = UIFont(name: "...", 10)
Namun .font
sudah usang dan saya tidak yakin bagaimana cara mengubah font sebaliknya.
Ada saran?
Jawaban:
Gunakan titleLabel
sebagai gantinya. The font
properti usang dalam iOS 3.0. Ini juga tidak berfungsi di Objective-C. titleLabel
adalah label yang digunakan untuk menampilkan judul UIButton
.
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 20)
Namun, saat mengatur teks judul Anda hanya harus menggunakan setTitle:forControlState:
. Jangan gunakan titleLabel
untuk mengatur teks untuk judul secara langsung.
titleLabel
adalah properti opsional. Terima kasih sebelumnya dalam versi beta, bukan.
myButton.titleLabel?.font = ...
akan bekerja karena jika titleLabel tidak ada, itu hanya akan menjadi no-op
Untuk Swift 3.0 :
button.titleLabel?.font = UIFont.boldSystemFont(ofSize: 16)
di mana "boldSystemFont" dan "16" dapat diganti dengan font dan ukuran khusus Anda.
btn.titleLabel?.font = .systemFont(ofSize: 12)
Anda tidak perlu memaksa membuka titleLabel untuk mengaturnya.
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 20)
Karena Anda tidak menggunakan titleLabel di sini, Anda dapat menggunakannya secara opsional dan jika tidak ada, itu hanya akan menjadi larangan.
Saya juga akan menambahkan seperti kata orang lain, properti font sudah usang, dan pastikan untuk digunakan setTitle:forControlState:
saat mengatur teks judul.
Dari dokumentasi :
Font yang digunakan untuk menampilkan teks pada tombol. ( Sudah usang di iOS 3.0 . Gunakan
font
properti darititleLabel
gantinya.)
Jika Anda mengalami masalah ukuran font (font Anda tidak merespons perubahan ukuran) ...
@codester memiliki kode yang benar:
myButton.titleLabel!.font = UIFont(name: YourfontName, size: 20)
Namun, ukuran font saya tidak berubah. Ternyata saya meminta font yang tidak ada ("HelveticaNeue-Regular"). Itu tidak menyebabkan crash, tetapi tampaknya hanya mengabaikan pernyataan font karena itu. Setelah saya mengubah font menjadi sesuatu yang ada, perubahan ke "size: x" benar-benar render.
kita dapat menggunakan berbagai jenis font sistem seperti di bawah ini
myButton.titleLabel?.font = UIFont.boldSystemFont(ofSize: 17)
myButton.titleLabel?.font = UIFont.italicSystemFont(ofSize:UIFont.smallSystemFontSize)
myButton.titleLabel?.font = UIFont.boldSystemFont(ofSize: UIFont.buttonFontSize)
dan font khusus Anda seperti di bawah ini
myButton.titleLabel?.font = UIFont(name: "Helvetica", size:12)
Anda harus melalui titleLabel
properti.
button.titleLabel.font
The font
properti telah usang sejak iOS 3.0.
Jika Anda mengatur AttributedString ke UIButton maka Anda dapat melakukan hal di bawah ini.
let attributedText = NSAttributedString(string: "Hello", attributes: [NSAttributedStringKey.font: UIFont(name: "Calibri", size: 19)])
okayButton.setAttributedTitle(attributedText, for: .normal)