首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSTextView不会响应setString

NSTextView不会响应setString
EN

Stack Overflow用户
提问于 2009-08-10 18:43:13
回答 3查看 2.6K关注 0票数 2

我刚接触Cocoa,我遇到了一个令人抓狂的问题。我正在尝试向NSTextView编写一个简单的NSString,但由于某些原因,它就是不响应。没有编译器警告,没有运行时错误,只有空白的textview

我可以使用NSTextView的其他方法,如selectAll、delete、setSelectedRanges等。它们工作得很好,从我在苹果文档和网络上读到的所有内容来看,像setString这样的方法应该可以工作。我也尝试过:

代码语言:javascript
复制
[[textView textStorage] setAttributedString:aString]

使用文本的NSAttributedString版本,同样没有结果。即使是string方法也能很好地工作并返回textView的内容,但是出于某种原因,setString和类似的东西不能。TextView是可编辑的。在调试器中,我尝试编写的字符串的值显示时没有任何问题。

我已经在网上到处找过了,似乎没有其他人有这个问题。

谢谢,乔

EN

回答 3

Stack Overflow用户

发布于 2009-08-10 21:21:54

您是否正在尝试在字段处于活动状态时设置字符串值?当文本字段被聚焦时,您实际与之交互的控件是它的编辑器(一个NSTextView),因此对文本字段存储的更改不会产生任何影响。

票数 1
EN

Stack Overflow用户

发布于 2009-08-17 19:23:52

我已经弄明白了--我不确定这是否是retainCount的意思,但看起来我是在textView初始化之前向它发送消息的。我将我的-setString语句移到了awakeFromNib方法中,它起作用了。我把它放在windowController的-init方法中。OOps!

票数 1
EN

Stack Overflow用户

发布于 2009-08-11 01:00:59

确保您在主线程上调用-setString:。AppKit不是线程安全的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1256517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档