对于每个协议引用,当需要字段编辑器时,应为任何文本显示对象调用windowWillReturnFieldEditor。确实,我的窗口代表收到了针对文本字段,按钮,组合框等的对该方法的调用,但从未收到针对文本视图的调用。
这正常吗? NSTextView是否带有自己的字段编辑器并且从不请求一个?还是我想念什么?
- (id)windowWillReturnFieldEditor:(NSWindow *)sender toObject:(id)anObject {
if ([anObject isKindOfClass:[NSTextView class]])
printf("\nwinWillRtnFldEdtor called for some textview."); // never happens
}
最佳答案
德拉茨查看字段编辑器的内存地址,很明显,每个textview确实都有其自己独特的字段编辑器(与共享公共字段编辑器的textfields不同),因此textview从不请求字段编辑器,也从不调用此方法。
不幸的是,因为我需要特殊的例程才能在它们激活之前设置多个不同的textview。 (使用文本框更容易做到这一点。)我能想到的最佳解决方法是在文本视图中添加类似标签的属性。
关于cocoa - windowWillReturnFieldEditor从未调用过NSTextView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6204778/