【问题标题】:Problems with NSTextView where NSTextField workedNSTextField 工作的 NSTextView 问题
【发布时间】:2011-01-27 06:11:14
【问题描述】:

我刚开始使用 obj-c,我正在尝试构建一个导入器来从一段格式化文本中获取几个数字。我从一个包装 TextField 开始,并且能够将文本转换为字符串并按照我的需要搜索它

NSString *varImport = [NSString stringWithString:[importTextView stringValue]];

当我在 Interface Builder 中切换到 TextView 时出现错误

-[NSScrollView string]: unrecognized selector sent to instance 0x100429160

我认为这可能是我的问题的根源,尽管当我在检查器面板中查看它标记为 ScrollView 时,我正在拖动 TextView,但我还不熟悉它。

通过我的研究,我遇到了两个不同的网站,他们说 TextView 不会直接输入字符串,但出于奇怪的原因,IE TextView 将数据存储为一个不断更新的 MutableString,要访问它,您必须复制原始数据(第二个例子)无论如何,我正在求助于专家,因为我显然做错了什么,我无法理解网络上的答案。

NSString *varImport = [NSString stringWithString:[[import textStorage] string]];

NSString *varImport = [[import string] copy];

如果您没有时间解释 web 示例中发生的事情,请不要太担心其他内容,我主要想了解 ScrollView 的内容以及如何从中获取字符串可以搜索到。

提前致谢!

格雷厄姆

【问题讨论】:

    标签: objective-c string nstextfield nstextview nsscrollview


    【解决方案1】:

    只是因为你使用了错误的方法。

    NSString *varImport = [NSString stringWithFormat:[importTextView string];

    另外,您可能将 importTextView 实例变量连接到错误的连接。一个 NSTextView 总是在一个 NSScrollView 中。只需从界面构建器中右键单击您的对象并将实例拖到文本视图的顶部(它应该显示“NSTextView”的位置)。 保存笔尖并再次尝试运行它。它应该可以工作。

    【讨论】:

    • 谢谢,您发现我的错误是我连接到了 TextView 的错误位置。现在我更正了 stringWithString 和 stringWithFormat 一样工作。
    【解决方案2】:

    To get text value 来自文本字段或文本视图,您应该使用- (NSString *)string 方法。

    【讨论】:

    • Re: 我首先尝试了这个,但由于我没有连接到 IB 中的正确位置,所以无法让它工作。我得到了另一个答案正常工作,但我会确保立即尝试以确保我了解发生了什么。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多