0

NSTextStorage、NSTextContainer、NSLayoutManager の 3 つのクラスを使用して画面にテキストを描画しています。nstextstorage の一部に特別な属性 (下線、色など) を持たせたいのですが、うまくいきません。コードは次のとおりです。

NSTextStorage *textStorage= [[NSTextStorage alloc] initWithString:string];
int fromLength= [[[pub from] name] length];
[textStorage addAttribute:NSUnderlinePatternSolid  value:NSUnderlineStyleAttributeName range:NSMakeRange(0, fromLength)];
[textStorage addAttribute:NSFontAttributeName value:[self defaultFont] range:NSMakeRange(0, [textStorage length])];

問題は、この例外が発生することです: NSConcreteNotifyingMutableAttributedString addAttribute:value:range:: nil value

手伝って頂けますか?

前もって感謝します。

編集:メソッド呼び出しを修正して例外を解決しました。ただし、属性は表示されません。

4

1 に答える 1

0

どのような値が[self defaultFont]返されますか? ゼロになる可能性があるようです。

于 2011-01-20T17:54:55.780 に答える