2013-02-12 33 views
7

Tôi muốn biết cách lập trình "Thắt chặt khoảng cách giữa các chữ"?UILabel làm thế nào để thắt chặt khoảng cách giữa các chữ cái

Tùy chọn này khả dụng cho UILabel được tạo trong tệp xib và đôi khi thực sự tiện dụng.

Tôi biết câu hỏi này đã được hỏi trước, nhưng tôi không thấy một câu trả lời mà đề cập này beeing sẵn trong xây dựng giao diện, vì vậy tôi đã tò mò ...

Trả lời

16

Bạn có thể tìm cho điều này:

@property(nonatomic) BOOL adjustsLetterSpacingToFitWidth 

Đặc tính của UILabel mới trong iOS6.

+0

Cảm ơn bạn! Sẽ upvote bạn nếu tôi có thể. Quá tệ, nó không có sẵn trong iOS 5, – Ivan

3

adjustsLetterSpacingToFitWidthdeprecated như iOS 7.

Bạn muốn bây giờ (như iOS 8) có thể muốn làm điều gì đó như:

NSAttributedString *as = 
[[NSAttributedString alloc] initWithString:@"Kerninating all the strings" 
           attributes:@{NSKernAttributeName : @(-2.0)}]; 
label.attributedText = as; 
1

Bạn có thể muốn sử dụng tài sản UILabel:

allowsDefaultTighteningForTruncation: Bool 

và đặt thành true. (Mặc định là false)

Theo Apple Tài liệu:

Khi thuộc tính này được thiết lập là true, nhãn thắt chặt intercharacter khoảng cách của văn bản của nó trước khi cho phép bất kỳ cắt ngắn để xảy ra. Nhãn xác định mức độ siết chặt tối đa tự động dựa trên phông chữ, chiều rộng dòng hiện tại, chế độ ngắt dòng và các thông tin liên quan khác.

https://developer.apple.com/reference/uikit/uilabel/1620533-allowsdefaulttighteningfortrunca

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