2012-05-07 39 views
10

Tôi muốn biết nếu systemFontSize trong bảng ứng dụng iOSView là luôn luôn tương tự cho textLabel không? Điều này đang làm suy giảm phong cách?iOS Foundation: kích thước phông chữ hệ thống

Ví dụ: khi tôi NSLog(@"%f",[UIFont systemFontSize]); Tôi nhận được 14.0. Đây có phải là luôn luôn giống nhau không?

Và còn gì nữa: Làm thế nào tôi có thể thay đổi kích thước phông chữ mà không thay đổi họ phông chữ (giả sử rằng tôi có phông chữ của riêng mình trong plist của tôi).

tôi đã cố gắng:

cell.textLabel.font = [UIFont fontWithName:@"Sansation-Light" size:12.0]; 

Nhưng UIFont luôn muốn cho tôi fontname/gia đình. Làm thế nào tôi có thể tránh điều đó và có một phông chữ cho tất cả màn hình của tôi và thay đổi kích thước chỉ?

Trả lời

25

Hệ thống Phông chữ được mô tả như sau:

+ (CGFloat)labelFontSize;//Returns the standard font size used for labels. 
+ (CGFloat)buttonFontSize;//Returns the standard font size used for buttons. 
+ (CGFloat)smallSystemFontSize;//Returns the size of the standard small system font. 
+ (CGFloat)systemFontSize;//Returns the size of the standard system font. 

và bạn có thể thay đổi kích thước font chữ mà không có họ phông chữ như thế này:

cell.textLabel.font = [UIFont systemFontOfSize:14]; 
+0

Có những lựa chọn mới có sẵn từ iOS 7, như '[UIFont preferredFontForTextStyle: UIFontTextStyleBody] 'cũng là một thông báo' UIContentSizeCategoryDidChangeNotification' để giám sát các thay đổi phông chữ của hệ thống. –

1

Chỉ cần để thêm vào câu trả lời ở trên. Các phương thức trên là thành viên của lớp UIFont. Vì vậy, để có được kích thước phông chữ nút mặc định ...

float defaultFontSize = [UIFont buttonFontSize]; 
2

Kích thước phông chữ hệ thống không phải lúc nào cũng giống nhau. Bắt đầu từ iOS 7 có Dynamic Type. Người dùng có thể đặt kích thước phông chữ ưa thích của họ trong cài đặt hệ thống. Đây là cách được khuyến nghị để ứng dụng nhận và đặt kích thước phông chữ của chúng ngay bây giờ.

Trong Trình tạo giao diện, bạn có thể chọn những thứ như Body hoặc Title 1 trong cài đặt Phông chữ. Kích thước thực tế sẽ được điều chỉnh theo cài đặt hệ thống của người dùng. Lập trình bạn sử dụng UIFont.preferredFont(forTextStyle:). Xem this post để biết thêm chi tiết về việc này trong iOS 10 và Swift 3.

Xem thêm

+0

@AdilSoomro, tôi không thể tìm thấy liên kết thay thế tài liệu tốt nhưng tôi đã thay thế tất cả các liên kết bằng những liên kết tốt hơn. Cảm ơn vì đã cho tôi biết. – Suragch

Các vấn đề liên quan