2012-08-22 5 views
7

NSMutableAttributedString이 있는데이 문자열은 꽤 길다. 나는 그것을 UIlabel에 표시하는 동안 줄 바꿈을하고 싶습니다. 그것은 NSString 경우, 나는 앞서 가서이 같은 것을 할 것입니다 Dynamic UILabel truncating the text 하지만 NSAttributedString 어떻게 할 수 있을까요? 그리고 일단 끝나면 레이블 크기에 따라보기의 크기를 조정해야합니다.NSMutableAttributedString에 대한 단어 줄 바꿈

+0

이봐 kBpro 당신에게 내 answser 도움이됩니다. 그렇다면 그것을 수락하십시오. – python

답변

5

iOS 6에서는 lineBreakMode 속성이 더 이상 사용되지 않습니다. 단순히 상수의 이름을 변경했습니다. 이전 상수는 더 이상 사용되지 않지만 여전히 사용 가능합니다. 이전 iOS에 배포하는 경우에도 상수는 단지 enum 값이므로 새 상수를 사용할 수 있습니다. 이전 이름과 새 이름은 동일한 값을 갖습니다. 따라서 yourlabelname.lineBreakMode = NSLineBreakByTruncatingTail을 설정하십시오.

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

다음은 attributedText 또는 일반 텍스트를 사용하는 것과 상관없이 다음 작업도 수행합니다. AttributedText 및 글꼴을 레이블에 설정 한 후 아래 줄을 추가하십시오.

label.lineBreakMode = .byTruncatingTail

관련 문제