UITextView
本文では、
テキストを強調表示する前に、テキストサイズを 16 として表示します。 (最初の画像)
を使用した後、NSAttributedString
ハイライトします。強調表示されたテキストは、同じサイズ (16) の文字列のみを示し、残りの文字列は元のサイズ (2 番目の .
この問題はiPod
、iPhone
欺くだけです。iPad
正しい形式で表示されます。
UITextView
テキストを強調表示するコード
NSDictionary *attrsDictionary = [NSDictionary dictionaryWithObject:[UIFont fontWithName:@"Arial" size:currentTextSize] forKey:NSFontAttributeName];
NSMutableAttributedString *attrString = [[NSMutableAttributedString alloc] initWithString:txtview4disp.text];
int startind=[[dict objectForKey:@"BeginIndexPos"]integerValue];
int endind=[[dict objectForKey:@"EndIndexPos"]integerValue];
NSRange rang;
if (startind>=STARTINDEX&&startind<=ENDINDEX) {
if (endind>ENDINDEX) {
int endind2=endind-ENDINDEX;
rang=NSMakeRange(startind-STARTINDEX, (endind-startind)-endind2);
}
else
rang=NSMakeRange(startind-STARTINDEX, endind-startind);
[attrString addAttributes:attrsDictionary range:rang];
[attrString addAttribute:NSBackgroundColorAttributeName value:[UIColor yellowColor] range:rang];
txtview4disp.attributedText=attrString;