Android中捕獲回退鍵(back)用於提示是否退出
1.過載Activity的OnkeyDown事件
2.在裡面判斷兩次back間隔的時間是否大於設定的時間間隔, 大於則提示,小於則直接退出。
public class MainActivity : Activity
{
private DateTime _firstBackTime;
private static TimeSpan BackExitTimeSpan = new TimeSpan (0, 0, 0, 0, 800); //ms
public override bool OnKeyDown(Keycode keyCode, KeyEvent e)
{
if (e.KeyCode == Keycode .Back)
{
var secondBackTime = DateTime .Now;
if (secondBackTime - _firstBackTime > BackExitTimeSpan)
{
Toast.MakeText(_view.Context, "再按一次退出程式..." , ToastLength.Short).Show();
_firstBackTime = secondBackTime;
return true ;
}
else
{
System. Environment.Exit(0);
}
}
return base .OnKeyDown(keyCode, e);
}
}