如何处理Xamarin表单中工具栏项的多次轻击?

时间:2018-10-05 13:31:14

标签: xamarin.forms

我要实现工具栏项的启用/禁用属性。

这是场景, 在激活工具栏项时,我想打开对话框。

问题: 当我多次点击工具栏项目时,它将多次调用对话框。请提供一些解决方案来处理对话框的多次调用。

1 个答案:

答案 0 :(得分:1)

要防止多次单击,可以使用一个变量,以防止在等待结果确认时调用对话框。

首先,在您的类中声明一个变量canTap;

private bool _canTap = true;

假设点击工具栏时的方法如下:

private void ItemTapped(object sender, EventArgs args)
{
    if(_canTap)
     {
       _canTap= false;
      Device.BeginInvokeOnMainThread(async () => { 
                var response = await 
              UserDialogs.Instance.ConfirmAsync(new ConfirmConfig { Message = "Are you sure you want to logout from this app?", Title = "Logout", OkText = "YES", CancelText = "NO" );
                 if(response)
                 {
                 }
                 else
                 {
                 }
                 _canTap = true;)};
}