2

私が書き込もうとしている問題は、すでに2つを使用して解決されていUILabelます.iは、最適化の方法を探しています。別の色で(example : hello world )表示する必要がある文字列があります。UILabel"hello in red color " and "world in green color"

前もって感謝します

4

5 に答える 5

5

ColoredLabelという名前のテキストラベルがあり、helloを赤で、worldを緑で書きたいとします。
iOS 6から、属性付き文字列を作成し、ラベルの属性付きテキストとして設定できます。

    NSMutableAttributedString* str=[[NSMutableAttributedString alloc]initWithString: @"Hello world"];
    [str setAttributes: @{ NSForegroundColorAttributeName : [UIColor redColor] }  range: NSMakeRange(0, 5) ];
    [str setAttributes: @{ NSForegroundColorAttributeName : [UIColor greenColor] }  range: NSMakeRange(6, 5) ];
    coloredLabel.attributedText= str;
于 2012-11-19T11:35:10.040 に答える
2

iOS 6 の時点でUILabelattributedTextプロパティがあります。NSAttributedStringこのプロパティに必要なコンテンツとフォーマット属性を適切に割り当てれば、完了です。これを行う最も簡単な方法は、Interface Builder で、ラベルのテキストを "Plain" から "Attributed" に切り替えるだけです。これを行った後、IB でフォーマット属性を直接設定できます。

(前述のとおり、このソリューションは iOS 6.0 以降でのみ機能します)

于 2012-11-19T11:21:33.810 に答える
1

iOS 4 との下位互換性を探している場合はNIAttributedLabel、Nimbus から使用できます。 http://nimbuskit.info/

于 2012-11-19T11:37:04.770 に答える
0

https://github.com/mattt/TTTAttributedLabelは、iOS 6 未満をターゲットにする必要がある場合の方法です。

于 2012-11-19T14:55:20.013 に答える
0

はい、次のような画像パターンで色を設定することもできます..

UIColor *LableColor=[[UIColor alloc]initWithPatternImage:[UIImage imageNamed:@"anyImageName"]];
于 2012-11-19T11:32:57.380 に答える