7

属性付きの文字列プロパティを使用して、ストーリーボードで UITextView のテキストの外観を設定しています。ただし、属性オブジェクトをコピーするために実行時にアクセスしようとすると、null が返されます。

NSAttributedString *atrString = self.contentTextView.attributedText;
NSLog(@"atrString = %@", atrString);

出力

2013-09-20 14:44:19.572 PageTest[69125:70b] atrString = (null)

私は以前に属性付き文字列を扱ったことがないので、何か間違ったことをしていると確信していますが、ドキュメントを精査してもまだ手ぶらで済みます。任意の支援をいただければ幸いです。ありがとう!

4

2 に答える 2

3

同じ問題がありました: Interface Builder (Xcode 6.1) で選択可能としてマークされていない場合、TextView で attributedText にアクセスできません。同じことがコードで行われていれば問題ありません。私の場合、UITextview をサブクラス化します。

-(id)initWithCoder:(NSCoder *)aDecoder
{
    self = [super initWithCoder:aDecoder];
    if (self)
    {
        self.selectable = NO;
    }
    return self;
}

だから私はIBで何かが完全ではないと思います。また)

于 2014-12-04T08:43:32.010 に答える
0

それはうまくいくはずです。IBOutlet の contentTextView をストーリーボードに接続するのを忘れていませんか?

contentTextView オブジェクトを印刷してみてください:

NSLog(@"contentTextView = %@", self.contentTextView);
于 2014-11-20T14:35:50.720 に答える