大叔也说Xamarin~Android篇~监听返回键,单击返回某个webView,双击退出
原创
©著作权归作者所有:来自51CTO博客作者仓储大叔的原创作品,请联系作者获取转载授权,否则将追究法律责任
回到目录
这个操作在原生android里是很容易实现的,在xamarin里也不难,在activity里有方法OnKeyDown,我们只需要重写一下就可以了,然后通过webView重新加载到要返回的页面即可,当然操作有些死板,但还是有着不错的效果!
实现的原理就是在activity里设置一个时间,单击后把这个时间赋值并与当前时间进行比较,如果在2秒内,就认为是双击操作,当然这个时间间隔你可以自己设置,在认为是双击操作后,执行Finish()方法即可以返回到主窗口,当然,单击操作你也可以设置自己的行为,本例中是在webView中打开新的页面.
lastBackKeyDownTime;
public override bool OnKeyDown(Keycode keyCode, KeyEvent e)
{
if (keyCode == Keycode.Back && e.Action == KeyEventActions.Down)
{
if (!lastBackKeyDownTime.HasValue || DateTime.Now - lastBackKeyDownTime.Value > new TimeSpan(0, 0, 2))
{
Toast.MakeText(this.ApplicationContext, "再按一次退出程序", ToastLength.Short).Show();
lastBackKeyDownTime = DateTime.Now;
loadUrl("/Task/CurrentTaskList");
}
else
{
Finish();
}
return true;
}
return base.OnKeyDown(keyCode, e);
}
对于知识来说,积累比天赋更重要~存储大叔
回到目录
作者:仓储大叔,张占岭,
荣誉:微软MVP