我正在为Windows应用商店和Windows Phone商店制作通用应用。我的手机版本有三个菜单屏幕,用户可以在其中导航和导航。最初我随时都使用硬件后退按钮,无论我在哪个页面,应用程序都关闭了。然后我改变了这样的后退按钮导航
主页:
public MainPage()
{
this.InitializeComponent();
this.NavigationCacheMode = NavigationCacheMode.Required;
}
游戏菜单页面(第2页)
public GameModes()
{
this.InitializeComponent();
HardwareButtons.BackPressed += HardwareButtons_BackPressed;
}
void HardwareButtons_BackPressed(object sender, BackPressedEventArgs e)
{
Frame rootFrame = Window.Current.Content as Frame;
if (rootFrame != null && rootFrame.CanGoBack)
{
e.Handled = true;
rootFrame.GoBack();
}
}
此时,如果用户按下后退按钮,一切正常。然而,当我到达第3页并尝试返回时,它将转到第2页,然后转到第1页,然后按下后退按钮不会关闭应用程序!
第3页
public TrialPage()
{
this.InitializeComponent();
HardwareButtons.BackPressed += HardwareButtons_BackPressed;
CountDownTimer();
}
void HardwareButtons_BackPressed(object sender, BackPressedEventArgs e)
{
this.Frame.Navigate(typeof(GameModes));
}