web-dev-qa-db-ja.com

NSMutableAttributedStringをNSStringに変換

NSMutableAttributedStringNSStringに変換できませんか?

2つのNSMutableAttributedStringsがあり、次のように2番目の文字列を1番目に追加しています。

[string1 appendAttributedString:string2];

ラベルにstring1を表示する必要があるため、次のようにします。

self.label1.text = (NSString *)string1;

"unrecognized selector sent to instance"エラー。

ここで何か間違っていますか?これは、ラベルのテキストプロパティにNSMutableAttributedStringを割り当てる正しい方法ではありませんか?

31
tech_human

キャストを使用して、オブジェクトをあるタイプから別のタイプに変換することはできません。提供された方法を使用します。

self.label1.text = [string1 string];

さらに良いことに、属性付きの文字列を使用します。

self.label1.attributedText = string1;
73
rmaddy

NSAttributtedStringには.stringプロパティが含まれます。そこから、属性なしでNSStringを取ることができます。

そう:

NSAttributtedString* someString;
NSString* string = someString.string;
14
Juraj Antas