【问题标题】:NSTextView "data" binding problemNSTextView“数据”绑定问题
【发布时间】:2011-09-20 20:31:45
【问题描述】:

我有一个 NSTextView textView 将其“数据”绑定到“内容”属性

textView 的富文本支持已关闭。

当 textView 的内容发生变化时,我的“数据”为 nil,尽管它的字符串和 rtf 可用。

- (NSData*)content ;

- (void)setContent:(NSData *)data;
{
    NSString* s = [textView string];
    NSData* rtf = [textView RTFDFromRange:NSMakeRange(0, [s length])];
// data == nil
// s != nil
// rtf != nil
}

如果我启用 textView 的富文本支持,"data" 不是 nil。

为什么“数据”为零?

【问题讨论】:

    标签: macos cocoa


    【解决方案1】:

    来自the docs

    数据

    一个包含格式化文本的 NSData 实例 NSTextView。

    NSData 包含 RTF 或 RTFD 表示 NSTextView 的内容,取决于 NSTextView 的配置。

    此绑定仅在 NSTextView 配置为 允许多种字体。(强调)

    换句话说,您必须启用富文本支持才能使用此绑定。如果您只想绑定纯字符串,请使用value 绑定,或者对于属性字符串使用attributedString 绑定而不是data

    【讨论】:

    • 我想要简单的保存数据,所以我使用 NSData 而不是 NSAttributedString,我必须将其转换为 / 来自 NSData。
    猜你喜欢
    • 2011-01-17
    • 2017-02-16
    • 2011-10-18
    • 2021-01-04
    • 2011-09-12
    • 2011-04-08
    相关资源
    最近更新 更多