2012-08-22 28 views
7

Tôi có NSMutableAttributedString và chuỗi dài. Tôi muốn làm từ bọc trong khi hiển thị nó trên UIlabel. Nếu đó là NSString, tôi sẽ tiếp tục và thực hiện một việc như thế này, Dynamic UILabel truncating the text Nhưng làm cách nào tôi có thể làm điều đó với NSAttributedString? Và một khi nó được thực hiện, tôi cần phải thay đổi kích thước xem tùy thuộc vào kích thước nhãn.Từ bọc cho NSMutableAttributedString

+0

Hey kBpro là answser của tôi hữu ích cho bạn. Nếu có chấp nhận nó. – python

Trả lời

5

Thuộc tính lineBreakMode không được chấp nhận trong iOS 6. Nó chỉ đơn giản là thay đổi tên của các hằng số. Các hằng số cũ không được chấp nhận nhưng vẫn có sẵn. Bạn có thể sử dụng các hằng số mới ngay cả khi bạn đang triển khai cho một iOS cũ hơn, vì các hằng số chỉ là các giá trị enum. Tên cũ và tên mới có cùng giá trị. Vì vậy, chỉ cần đặt yourlabelname.lineBreakMode = NSLineBreakByTruncatingTail.

NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init]; 
[paragraphStyle setLineBreakMode:NSLineBreakByTruncatingTail]; 
[attributedStr addAttribute:NSParagraphStyleAttributeName 
        value:paragraphStyle 
        range:NSMakeRange(0,[attributedStr length])]; 
0

Sau đây cũng hoạt động không phụ thuộc vào việc sử dụng văn bản được phân bổ hoặc văn bản thông thường. Hãy chắc chắn để thêm dòng dưới đây sau khi thiết lập AttributedText và phông chữ cho nhãn.

label.lineBreakMode = .byTruncatingTail

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