我正在創建一個Xamarin應用程序,我想要合併多個頁面,MasterDetailPage
和NavigationPage
。Xamarin中的MasterDetailPage和NavigationPage組合
我的MainPage
包含MasterDetailPage
,MasterDetailPage
的主人包含用戶可以查看的視圖列表(用於存儲信息的定製類,例如類類型,要顯示的圖像和名稱)。那些意見都是ContentPage
s。點擊列表中的項目後,ContentPage
通過反射進行初始化,然後存儲在MasterDetailPage
中。目前一切都是按照Xamarin的建議。
但是其中之一ContentPages
包含ListView
。
當已經選擇了一個項目,該ListView
有打開的DetailView和用戶必須能夠返回到ListView
。正因爲如此,我使用Navigation
類和NavigationPage
內推頁面,如下(結合可以做的更好,但它只是爲了獲得與Xamarin的感覺):
private async Task Handle_ItemSelected(object sender, Xamarin.Forms.SelectedItemChangedEventArgs e)
{
if (_detail == null)
{
_detail = new Detail();
}
_detail.BindingContext = SelectedTrack;
await Navigation.PushAsync(new NavigationPage(_detail));
}
如果這樣做了, 返回按鈕呈現在MasterDetailPage
之上。
有什麼辦法去ListView
的詳細信息頁面時,我可以刪除MasterDetailPage的「漢堡」按鈕?或者我目前使用錯誤的工作流程?
MasterDetailPage的Detail屬性中的頁面已經在導航頁面中。 – Echarnus
我已經添加了一個示例項目,請看看。 –
對不起,遲到的答案,沒有太多時間。我看了你的例子,我確實把頁面放在了一個導航頁面的細節中。 – Echarnus