【发布时间】:2013-08-09 22:37:22
【问题描述】:
我正在构建一个包含其他几个子视图(NSTextField、WebView、...)的自定义视图。当其中一个子视图是第一响应者时,我想让我的自定义视图绘制不同的边框,并充当可以使用菜单项和键盘快捷键操作的单个项目。它看起来像这样:
+-------------+
| NSTextField |
+-------------+
| WebView |
+-------------+
到目前为止,我已经成功地对 NSTextField 和其他人进行了子类化,以便在调用 - (BOOL)becomeFirstResponder 和 - (BOOL)resignFirstResponder 时通知委托人。这种方法不适用于WebView,因为它本身包含许多子视图——我不能将它们全部子类化!
是否有更好的方法来检测子视图何时更改其第一响应者状态?还是创建自定义视图的更好方法?
【问题讨论】:
-
这里的问题一模一样,你找到解决办法了吗?
标签: objective-c cocoa webview nsview first-responder