NSString에 포함 된 텍스트 내에서 특정 단어를 굵게 표시 할 수 있는지 궁금합니다. 내가 굵게 수 있어요,이 같은 NSMutableAttributedString를 사용하여 문자열 내에서의 위치에 따라 문자의 글꼴 변경 :NSString 단락 내 특정 단어를 채우는 방법
NSMutableAttributedString *attrString = [[NSMutableAttributedString alloc] initWithString:utf8String];
UIFont *boldFont = [UIFont boldSystemFontOfSize:18];
NSRange boldedRange = NSMakeRange(0, 9);
[attrString beginEditing];
[attrString addAttribute:NSFontAttributeName
value:boldFont
range:boldedRange];
[attrString endEditing];
을하지만이 문자열의 첫 번째 9 개 문자의 글꼴을 변경합니다.
내가 원하는 것은 "질문", "알고 계셨습니까?"및 "추가 읽기"라는 문자열 내에서 다음 단어를 굵게 표시하는 것입니다. 이것이 가능한가? 사실은 내가 문자열에서 자신의 위치를 알지 못한다는 것입니다.
나는 이것이 중복임을 제안하는 질문을 한 번 보았지만 제 질문은 정확히 같지 않았고 제공된 대답이 도움이되지 못했습니다. 문자열 내에서 범위를 찾은 다음 NSMutableAttributedString에 추가해야합니다. 이것이 내가 도움을 요청하는 비트입니다. 방법을 설명하는 답변이 제공되었습니다.
편집 : 가정 된 복제본과 그 대답은 질문에 대답하지 않습니다. 이 질문은 단락에서 특정 단어를 찾는 것 이상이며 NSMutableAttributedString을 사용하여 단락을 지정하는 방법에 관한 것입니다. 아래에 제공된 대답이 답입니다. 감사합니다.
의 사용 가능한 복제 [(단지 첫번째)는 NSString에서 문자열의 모든 위치 찾기 (http://stackoverflow.com/questions/7033574/find-all-locations-of-substring-in -nsstring-not-just-first) – Kreiri
시도해주세요. http://stackoverflow.com/questions/6013705/any-way-to-bold-part-of-a-nsstring – sohil
@sohil, 감사합니다. 나는 이미 그 질문을 시도해 보았습니다. 문자열 내에서 부분 문자열의 위치를 사용합니다. – user3079872