我有以下委托方法,该方法在可编辑字段中更改文本时正在侦听:
- (void)controlTextDidEndEditing:(NSNotification *)aNotification {
说,我声明了两个NSTextFields,如何找出生成通知的NSTextField?我想在一个文本字段的文本完成编辑时执行一些代码,而在另一个文本字段的代码完成编辑时执行其他代码。
换句话说,如何获取发出通知的文本字段的名称?
谢谢!
答案 0 :(得分:1)
[aNotification object]是发布通知的NSControl(或NSControl子类)对象。
答案 1 :(得分:0)
您可以使用标签并获取对象的标记字段,但首先您必须强制将对象从Any向下转换为NSTextField,以便您可以访问标记属性(“any”的对象没有“标记” “财产”如此:
let object = aNotification.object as! NSTextField
然后你可以查看标签:
if object.tag == 99 { do something }
这就是我现在正在处理的一些代码中解决这个问题的方法。