我有一个简单的Xamarin Forms 应用,使用UWP。我正在推送一个新视图:
await Navigation.PushAsync(new NavigationPage(new MyDetailView()));
当该视图加载时,没有返回上一级的后退按钮。推荐采取什么方法?请注意,在iOS中有后退按钮。
await Navigation.PushAsync(new NavigationPage(new MyDetailView()));
当该视图加载时,没有返回上一级的后退按钮。推荐采取什么方法?请注意,在iOS中有后退按钮。
在桌面上,可以使用以下代码片段显示后退按钮:
SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility =
AppViewBackButtonVisibility.Visible;
这将在应用的标题栏中显示返回按钮。您可能希望在每次导航时更新此状态,以便在不需要显示按钮时(导航堆栈为空时)不会显示。
但我想这应该自动发生,因为这已经是Xamarin.Forms中的行为-请参见NavigationPageRenderer源代码463行。
我认为问题可能是您正在推入新视图并使用新的NavigationPage
进行包装,这会夺取导航堆栈并使其为空。我想如果您只在现有的NavigationPage
中推入新视图,则应该按您所期望的工作并解决您的问题:
Navigation.PushAsync( new MyDetailView() );