UITextView Attributierter Text funktioniert nicht bei Verwendung der benutzerdefinierten Schriftart
Ich benutzeUITextView
und ich stelle die Schriftart und den zugewiesenen Text per Code ein.
Fall 1 Benutzerdefinierte Schriftart - JA , attribtued text- NEI
Der textView-Text wird in einer benutzerdefinierten Schriftart angezeigt.
Ich möchte den angehängten Text mit einer benutzerdefinierten Schriftart, d. H.Botschaft in diesem Fall muss fett gedruckt werden.
Fall 2: Benutzerdefinierte Schriftart - JA , attribtued text- J
Nur der abgebildete Text (Fettdruck) wird in benutzerdefinierter Schriftart angezeigt.
Der Code, den ich habe, ist:
- (void)loadTextView
{
_textView.text=NSLocalizedString(@"more_info_text",nil);
_textView.font=[UIFont fontWithName:@"BurbankSmall-Medium" size:16];
NSRange rangeBold = [_textView.text rangeOfString:@"Examples of invalid characters:"];
NSRange rangeBold2 = [_textView.text rangeOfString:@"Restricted text:"];
NSRange rangeBold3 = [_textView.text rangeOfString:@"Message :"];
UIFont *fontText = [self boldFontWithFont:_textView.font];
NSDictionary *dictBoldText = [NSDictionary dictionaryWithObjectsAndKeys:fontText, NSFontAttributeName, nil];
NSMutableAttributedString *mutAttrTextViewString = [[NSMutableAttributedString alloc] initWithString:_textView.text];
[mutAttrTextViewString setAttributes:dictBoldText range:rangeBold];
[mutAttrTextViewString setAttributes:dictBoldText range:rangeBold2];
[mutAttrTextViewString setAttributes:dictBoldText range:rangeBold3];
[_textView setAttributedText:mutAttrTextViewString];
_textView.editable=NO;
_textView.selectable=NO;
}
- (UIFont *)boldFontWithFont:(UIFont *)font
{
UIFontDescriptor * fontD = [font.fontDescriptor
fontDescriptorWithSymbolicTraits:UIFontDescriptorTraitBold];
return [UIFont fontWithDescriptor:fontD size:16];
}
Wenn ich die Zeile kommentieresetAttributedText:mutAttrTextViewString
, alles wird in benutzerdefinierter Schriftart angezeigt. Wenn ich es auskommentiere, wird nur der angezeigte Text in benutzerdefinierter Schriftart und der Rest in Standardschriftart angezeigt.
Warum passiert dies ? Wenn dies nicht möglich ist, denke ich, HTML-Inhalt als zugeordneten Text aufzunehmen, aber ich möchte dies im schlimmsten Fall als Option in Betracht ziehen.