Objective-C Language
NSAttributedString
수색…
커스텀 커닝 (문자 간격)이있는 문자열 만들기 editshare
NSAttributedString
(및 해당 mutable 형제 NSMutableAttributedString
)을 사용하면 복잡한 모양의 문자열을 사용자에게 만들 수 있습니다.
일반적인 응용 프로그램은 문자열을 표시하고 사용자 정의 커닝 / 문자 간격을 추가하는 데이 코드를 사용하는 것입니다.
이것은 다음과 같이 달성 될 것입니다 (label은 UILabel
임). "kerning"이라는 단어에 다른 커닝을 사용합니다.
NSMutableAttributedString *attributedString;
attributedString = [[NSMutableAttributedString alloc] initWithString:@"Apply kerning"];
[attributedString addAttribute:NSKernAttributeName value:@5 range:NSMakeRange(6, 7)];
[label setAttributedText:attributedString];
텍스트가 쳐진 문자열 만들기
NSMutableAttributedString *attributeString = [[NSMutableAttributedString alloc] initWithString:@"Your String here"];
[attributeString addAttribute:NSStrikethroughStyleAttributeName
value:@2
range:NSMakeRange(0, [attributeString length])];
문자열에서 속성을 열거하고 문자열의 일부에 밑줄을 사용하는 방법
NSMutableDictionary *attributesDictionary = [NSMutableDictionary dictionary];
[attributesDictionary setObject:[UIFont systemFontOfSize:14] forKey:NSFontAttributeName];
//[attributesDictionary setObject:[UIColor redColor] forKey:NSForegroundColorAttributeName];
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc]initWithString:@"Google www.google.com link" attributes:attributesDictionary];
[attributedString enumerateAttribute:(NSString *) NSFontAttributeName
inRange:NSMakeRange(0, [attributedString length])
options:NSAttributedStringEnumerationLongestEffectiveRangeNotRequired
usingBlock:^(id value, NSRange range, BOOL *stop) {
NSLog(@"Attribute: %@, %@", value, NSStringFromRange(range));
}];
NSMutableAttributedString *attributedStr = [[NSMutableAttributedString alloc] initWithString:@"www.google.com "];
[attributedString addAttribute:NSUnderlineStyleAttributeName
value:[NSNumber numberWithInt:NSUnderlineStyleDouble]
range:NSMakeRange(7, attributedStr.length)];
[attributedString addAttribute:NSForegroundColorAttributeName
value:[UIColor blueColor]
range:NSMakeRange(6,attributedStr.length)];
_attriLbl.attributedText = attributedString;//_attriLbl (of type UILabel) added in storyboard
산출:
트라이 컬러 속성 문자열 작성 방법.
NSMutableAttributedString * string = [[NSMutableAttributedString alloc] initWithString:@"firstsecondthird"];
[string addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(0,5)];
[string addAttribute:NSForegroundColorAttributeName value:[UIColor greenColor] range:NSMakeRange(5,6)];
[string addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(11,5)];
범위 : 문자열 시작부터 끝까지
여기서 우리는 firstsecondthird 문자열을 가지므로 첫 번째 문자부터 시작하여 다섯 번째 문자까지 범위 (0,5)를 설정하여 녹색 텍스트 색상으로 표시합니다.
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow