[英]Xamarin.Forms MvvM Prism Software and Hardware Back Button
我的实现代码有问题,它解决了确认软件和硬件按钮返回的问题。 我需要确认并保存 state 页面字段。 当确认为真并保存 state 没有错误我想关闭页面时,当确认为假或保存 state 有错误我想停止关闭页面。 我将 xamarin.forms 与 mvvm 棱镜一起使用。
如果您的意思是要自定义Android设备的软硬件返回按钮的方法,您可以重写OnOptionsItemSelected
和OnKeyDown
方法来实现。
MainActivity.cs
中的软件后退按钮代码:
protected override void OnCreate(Bundle savedInstanceState)
{
...
Android.Support.V7.Widget.Toolbar toolbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbar);
SetSupportActionBar(toolbar);
SupportActionBar.SetHomeButtonEnabled(true);
}
public override bool OnOptionsItemSelected(IMenuItem item)
{
if(item.ItemId == Android.Resource.Id.Home)
{
Console.WriteLine("software back button press");
return false;
}
else
{
return base.OnOptionsItemSelected(item);
}
}
MainActivity.cs
中的硬件后退按钮代码:
public override bool OnKeyDown([GeneratedEnum] Keycode keyCode, KeyEvent e)
{
if(e.Action == KeyEventActions.Down && keyCode == Keycode.Back)
{
Console.WriteLine("hardware back button press");
}
return false;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.