除非我正在编辑其中一个表项,否则我的NSTableView工作正常。如果用户仍处于编辑模式,并且按下了“确定”按钮,则表格不会更新。
当用户按下ok按钮(closeheet)时,如何强制tableview提交更改。
另外,如何处理ESC键取消编辑?
很抱歉,如果问题看起来很荒谬,但我一直只在Mac上开发一个月。
答案 0 :(得分:3)
您应该可以致电[sheet makeFirstResponder:sheet]
,其中sheet
是您即将关闭的工作表。这将使第一响应者状态远离文本字段,这将导致它提交正在进行的编辑。
答案 1 :(得分:1)
似乎有不同的解决方案。如果使用绑定将编辑表的NSTextField连接到ArrayController,则可以在Interface Builder中的TextFields值绑定中检查“连续更新值”。
其他解决方案在Red Sweater Blog的博文中得到了很好的解释:http://www.red-sweater.com/blog/229/stay-responsive