繁体   English   中英

双击包含 popModalAsync 的按钮时崩溃

[英]Crash when doubleclicking a button containing popModalAsync

双击执行代码的按钮时

await Navigation.PopModalAsync(true);

程序进入中断模式,即崩溃。 应该如何处理,以便在点击垃圾邮件时不会崩溃?

编辑

我将参数更改为 false 并且它按预期工作。 是否有任何解决方法可以将 animation 设置为 true?

解决了

简单的解决方案:

Boolean _istapped = false;
    private async void Button_Clicked(object sender, EventArgs e)
    {
        if (_istapped)
            return;

        _istapped = true;

        await Navigation.PopModalAsync(true);

        _istapped = false;
    }

应用程序崩溃是因为当您双击按钮时, Navigation.PopModalAsync将执行两次,并且第二次找不到页面。

这是解决此问题的另一种简单方法:

private async void Button_Clicked(object sender, EventArgs e)
{
    Button btn = sender as Button;
    btn.IsEnabled = false;

    await Navigation.PopModalAsync(true);
    //btn.IsEnabled = true;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM