Tôi đang cố gắng thay đổi phông chữ của UIButton bằng Swift ...
myButton.font = UIFont(name: "...", 10)
Tuy nhiên .font
không được chấp nhận và tôi không chắc chắn cách thay đổi phông chữ khác.
Bất kỳ đề xuất?
Tôi đang cố gắng thay đổi phông chữ của UIButton bằng Swift ...
myButton.font = UIFont(name: "...", 10)
Tuy nhiên .font
không được chấp nhận và tôi không chắc chắn cách thay đổi phông chữ khác.
Bất kỳ đề xuất?
Câu trả lời:
Sử dụng titleLabel
thay thế. Tài font
sản bị phản đối trong iOS 3.0. Nó cũng không hoạt động trong Objective-C. titleLabel
là nhãn được sử dụng để hiển thị tiêu đề trên UIButton
.
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 20)
Tuy nhiên, trong khi thiết lập văn bản tiêu đề, bạn chỉ nên sử dụng setTitle:forControlState:
. Không sử dụng titleLabel
để đặt bất kỳ văn bản cho tiêu đề trực tiếp.
titleLabel
là thuộc tính tùy chọn. Cảm ơn trước đây là bản beta.
myButton.titleLabel?.font = ...
sẽ hoạt động kể từ khi titleLabel không hoạt động, nó sẽ chỉ là một no-op
btn.titleLabel?.font = .systemFont(ofSize: 12)
Bạn không cần phải hủy bỏ tiêu đềLabel để đặt nó.
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 20)
Vì bạn không sử dụng tiêu đề Nhãn ở đây, bạn chỉ có thể tùy ý sử dụng nó và nếu không, nó sẽ chỉ là không có.
Tôi cũng sẽ thêm như những người khác đang nói, thuộc tính phông chữ không được dùng nữa và đảm bảo sử dụng setTitle:forControlState:
khi đặt văn bản tiêu đề.
Từ tài liệu :
Phông chữ được sử dụng để hiển thị văn bản trên nút. ( Không dùng nữa trong iOS 3.0 . Sử dụng thuộc
font
tính củatitleLabel
thay thế.)
Nếu bạn gặp vấn đề về kích thước phông chữ (phông chữ của bạn không đáp ứng với thay đổi kích thước) ...
@codester có mã đúng:
myButton.titleLabel!.font = UIFont(name: YourfontName, size: 20)
Tuy nhiên, kích thước phông chữ của tôi không thay đổi. Hóa ra tôi yêu cầu một phông chữ không tồn tại ("HelveticaNeue-Thường xuyên"). Nó không gây ra sự cố, nhưng dường như chỉ bỏ qua tuyên bố phông chữ đó vì nó. Khi tôi thay đổi phông chữ thành thứ gì đó tồn tại, thay đổi thành "size: x" đã hiển thị.
chúng ta có thể sử dụng các loại phông chữ hệ thống khác nhau như dưới đây
myButton.titleLabel?.font = UIFont.boldSystemFont(ofSize: 17)
myButton.titleLabel?.font = UIFont.italicSystemFont(ofSize:UIFont.smallSystemFontSize)
myButton.titleLabel?.font = UIFont.boldSystemFont(ofSize: UIFont.buttonFontSize)
và phông chữ tùy chỉnh của bạn như dưới đây
myButton.titleLabel?.font = UIFont(name: "Helvetica", size:12)
Bạn nên đi qua titleLabel
tài sản.
button.titleLabel.font
Tài font
sản đã bị từ chối kể từ iOS 3.0.
Nếu bạn đang đặt AttributionString cho UIButton thì bạn có thể thực hiện việc bên dưới.
let attributedText = NSAttributedString(string: "Hello", attributes: [NSAttributedStringKey.font: UIFont(name: "Calibri", size: 19)])
okayButton.setAttributedTitle(attributedText, for: .normal)