在Android按钮上单击事件(仅绑定一次)

时间:2016-12-31 10:44:05

标签: android button binding xamarin.android click

我有一个Xamarin Android项目,只需要绑定Click事件一次。例如,我在Activity上有这个按钮:

button = FindViewById<Button>(Resource.Id.button);
button.Click += buttonClick;

其中button是全局变量:private Button button;

我已经测试过检查Click事件是否为null,但它只能出现在委托的左侧(+ =)。有些想法?

提前致谢!

1 个答案:

答案 0 :(得分:0)

如果我已正确理解您的问题,您有一个全局按钮,并且您希望在特定的活动/片段上订阅其点击事件,那么您需要像这样定义此按钮:

public static Button button;

不应将全局按钮定义为private Button button

您已注册其事件处理程序,并且您可能希望在离开此活动/片段时取消订阅此点击事件处理程序,您可以在此活动OnStop生命周期中取消订阅:

protected override void OnStop()
{
    base.OnStop();
    button.Click -= buttonClick;
}