2015-08-10 17 views
8

Tôi đã có nút có bố cục outletLeaderboard. Tôi muốn thay đổi kích thước văn bản của mình bằng cách mã, vì vậy đây là những gì tôi đã viết:Cách thay đổi kích thước văn bản Nút trong iOS 8 nhanh chóng

outletLeaderboard.font = UIFont(name: outletLeaderboard.font.fontName, size: 37) 

và sau đó tôi nhận được một lỗi:

'font' is unavailable: APIs deprecated as of iOS 7 and earlier are unavailable in Swift

dòng chính xác tôi cần phải viết như thế nào?

Trả lời

12

Sử dụng titleLabel thay vì .font

outletLeaderboard.titleLabel!.font = UIFont(name: "HelveticaNeue-Thin", size: 20) 
+0

tên font của tôi là trang phục: Helvetica Neue Thin. Làm thế nào để viết nó trong dòng mã? – Eliko

+0

xem câu trả lời cập nhật – iAnurag

3

Hãy thử

outletLeaderboard.titleLabel?.font = UIFont(name: outletLeaderboard.font.fontName, size: 37) 
+0

Tôi vẫn nhận được lỗi: 'font' không khả dụng: API không được dùng như iOS 7 trở về trước không khả dụng trong Swift – Eliko

1

Đơn giản chỉ cần truy cập vào nhãn tiêu đề của nút. Ví dụ:

button.titleLabel?.font = UIFont(name: "Arial-MT", size: 15) 
+0

Điều gì sẽ xảy ra nếu tên phông chữ của tôi bị tính phí: Helvetica Neue Thin. Làm thế nào để viết nó trong dòng mã? – Eliko

+1

Nút của bạn đã có phông chữ này? Sau đó thử: 'button.titleLabel? .font = UIFont (descriptor: (button.titleLabel? .font.fontDescriptor()) !, size: 15)' – Pils19

0

Khi bạn đã xác định outletLeaderboard, hãy đảm bảo loại UIButton của nó.

var outletLeaderboard : UIButton = UIButton() 
outletLeaderboard.titleLabel!.font = UIFont(name: "Consolas", size: 30) 
1

Với Swift 3:

if let titleLabel = outletLeaderboard.titleLabel { 
    titleLabel.font = UIFont(name: titleLabel.font.fontName, size: 16) 
} 

hoặc thậm chí tốt hơn một phần mở rộng:

extension UIButton { 
    func set(fontSize: CGFloat) { 
     if let titleLabel = titleLabel { 
      titleLabel.font = UIFont(name: titleLabel.font.fontName, size: fontSize) 
     } 
    } 
} 
Các vấn đề liên quan