• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

如何使Xamarin.Android应用程序退出,当两次点击后退按钮(包括点击之间的确认消息)?

Android 来源:Profile2ForStack 3次浏览

在我的MainActivity,我推翻这样的如何使Xamarin.Android应用程序退出,当两次点击后退按钮(包括点击之间的确认消息)?

public override void OnBackPressed() 
{ 
    Toast toast = Toast.MakeText(this, "Press again to exit", ToastLength.Short); 
    toast.SetMargin(0,0.20f); 
    toast.Show(); 
} 

的OnBackPressed()方法,当用户在MainActivity并单击后退按钮一次,屏幕上的“再次按下此键退出”出现的消息此消息消失几秒钟后。如果用户在屏幕上显示此消息时再次单击后退按钮,我希望应用程序退出,但当消息消失且用户单击后退按钮时,我希望消息再次出现。我已经看到了一些用Java实现的例子,但是我发现很难将这些例子用于Xamarin.Android。


===========解决方案如下:

此代码正常工作。

long lastPress; 

    public override void OnBackPressed() 
    { 
     // source https://stackoverflow.com/a/27124904/3814729 
     long currentTime = DateTime.UtcNow.Ticks/TimeSpan.TicksPerMillisecond; 

     // source https://stackoverflow.com/a/14006485/3814729 
     if (currentTime - lastPress > 5000) 
     { 
      Toast.MakeText(this, "Press back again to exit", ToastLength.Long).Show(); 
      lastPress = currentTime; 
     } 
     else 
     { 
      base.OnBackPressed(); 
     } 
    } 

如果您想使用短吐司长度,请更改时间。

ToastLength.Long = 3500(毫秒)

ToastLength.Short = 2000(毫秒)


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)