我只是想知道究竟怎样的委托方法,知道什么时候被调用? 例如在UITextFieldDelegate
协议textFieldDidBeginEditing:
方法编辑时是所谓的文本框开始(提供我实现此方法)。
那么究竟怎样的代码来检测何时调用textFieldDidBeginEditing:
系统是否只检查是否textFieldDidBeginEditing:
已经实现,如果它运行的方法? 有没有办法,我没有看到引擎盖下的东西吗?
我只是想知道究竟怎样的委托方法,知道什么时候被调用? 例如在UITextFieldDelegate
协议textFieldDidBeginEditing:
方法编辑时是所谓的文本框开始(提供我实现此方法)。
那么究竟怎样的代码来检测何时调用textFieldDidBeginEditing:
系统是否只检查是否textFieldDidBeginEditing:
已经实现,如果它运行的方法? 有没有办法,我没有看到引擎盖下的东西吗?
究竟。
我不能保证苹果的框架代码是如何引擎盖下实现的,而是一个非常普遍感觉是:
if ([[self delegate] respondsToSelector:@selector(someInstance:didDoSomethingWith:)]) {
[[self delegate] someInstance:self didDoSomethingWith:foo];
}
这可以让你有可选的委托方法,这似乎是你的问题。
该代码不“检测时,称之为”一个委托方法。 文本域接收事件时,并调用它的代表的方法(其具有textFieldDidBeginEditing:实现的方法)。
总之,当你点击文本字段开始编辑文本字段说:“哦,我现在编辑!” 而在内部调用[self.delegate textFieldDidBeginEditing:self]
,这里的代表是在你设置为所述代表(通常是一个UIViewController子类)实例