Xamarin LongClick switch语句不起作用

时间:2019-08-22 20:55:10

标签: c# android xamarin button

我的UI上有一个按钮,当用户长按时,我想使用switch语句,但这不起作用。

bool test = true;

button.LongClick += Button_LongClick;

private void Button_LongClick(object sender, Android.Views.View.LongClickEventArgs e)
{
        switch (test)
        {
            case true:
                // Toast error
                break;
            case false:
                // call a method
                break;
        }
}

我不知道为什么,但是开关不起作用,即使布尔值是true,也总是调用该方法。

我错过了什么吗?

1 个答案:

答案 0 :(得分:3)

是的,bool是一种类型,我们应该定义变量bool并为此变量赋一个值(例如truefalse)。 例如,您可以像这样使用它:

 bool flag = true;

 button.LongClick += Button_LongClick;
 private void Button_LongClick(object sender, Android.Views.View.LongClickEventArgs e)
    {
        switch (flag)
    {
            case true:
                // Toast error
                Toast.MakeText(this,"the value of flag is true. " ,ToastLength.Short).Show();
                break;
            case false:
                // call a method
                Toast.MakeText(this, "the value of flag is false. ", ToastLength.Short).Show();
                break;
        }
    }