在MonoTouch中有几种处理事件的方法。在我看来,在IB中映射事件是最可靠的方法。我不明白的是为什么有时事件映射在ViewDidLoad不工作。例如,我有一个UITextField(称为tfCode)。如果它在IB中为EditingDidEnd映射到tfcodechange,它可以工作:
partial void tfCodeChanged(NSObject sender)
{
...
}
然而,在ViewDidLoad中,如果我放入以下代码,它不会被击中:
tfCode.EditingDidEnd += delegate {
...
};
但一般来说,我在ViewDidLoad中做了很多事件处理,它们大多工作。
所以,我很困惑。有人能解释一下原因吗?
只要您不通过分配Delegate或WeakDelegate属性来覆盖内部处理程序,就会触发事件。