mono touch种注册事件几种方式

1.attach an anonymous delegate:

testButton1.TouchUpInside += delegate {
    new UIAlertView("Touch1", "TouchUpInside handled", null, "OK", null).Show();
};

2.use a lambda expression:

testButton2.TouchUpInside += (sender, ea) => {
    new UIAlertView("Touch2", "TouchUpInside handled", null, "OK", null).Show();
};
取消事件是“-=”

3.assign a delegate method:

testButton3.TouchUpInside += HandleTouchUpInside;

private void HandleTouchUpInside(object sender, System.EventArgs e)
{
	//...
}

4.AddTarget方式:

btnForgetPwd.AddTarget (this, new MonoTouch.ObjCRuntime.Selector ("LoginSelector"), UIControlEvent.TouchUpInside);
[Export("LoginSelector")]
void OpenPlatform()
{
	//...
}

最后一个方法揭示我们可动态创建,这来说的动态创建是指配置的意思,试想一下,如果抛开移动端,我们在pc端做一些配置,勾勾选选就能构建一个xml,然后去解析这个xml,对于button的事件,预先处理好一个类库,然后用AddTarget动态绑定即可,很便捷的哦


你可能感兴趣的:(delegate,注册事件,addTarget)