2017-01-24 42 views
0

我設置了我的Xamarin.Forms棱鏡應用程序使用Master-Detail頁面(MasterBehavior設置爲Popover)進行導航,但我注意到一些我的Prism應用程序與使用此頁面的示例Xamarin.Forms應用程序之間的差異(https://developer.xamarin.com/guides/xamarin-forms/user-interface/navigation/master-detail-page/)。Xamarin.Forms棱鏡主視圖不顯示彈出窗口時可見的漢堡包圖標

在Android上,單擊漢堡包圖標使主人在兩個應用程序中都可以滑出。在示例應用程序中,漢堡包圖標保持可見。在我的棱鏡的應用程序,漢堡包圖標不保持可見,作爲主視圖需要在屏幕的整個高度,如下圖所示:

Android

在UWP,點擊漢堡包圖標使得主滑出在兩個應用程序。在示例應用程序中,漢堡包圖標保持可見,主頁面的標題顯示在頂部。在我的棱鏡的應用程序,無論是這些項目是可見的,如下所示:

UWP

有也似乎是在棱鏡的應用程序主視圖的頂部和底部的一些類型的填充的或空的空間。

這些差異是由Prism本身引入的,還是有一種方法可以將主設備的行爲類似於香草Xamarin.Forms樣本?


修訂SCREENSHOTS

爲了更好地證明我看到的問題,這裏有更多的截圖。

Xamarin樣品,應用程序啓動,然後打漢堡包圖標保持導航欄(漢堡包圖標)與主可見可見:

Xam

我棱鏡的應用程序,應用程序啓動,然後擊中漢堡包圖標使得主視圖佔用屏幕的整個高度:

Prism

回答

1

爲了得到漢堡包圖標給你當導航欄顯示爲PA您必須在「導航頁面」中包裝「細節」。因此,請註冊導航頁面,然後將其添加到您的導航URI。

protected override void OnInitialized() 
    { 
     NavigationService.NavigateAsync("MyMasterDetail/NavigationPage/MainPage"); 
    } 

看看這個沙箱例如:

https://github.com/PrismLibrary/Prism/tree/master/Sandbox/Xamarin

+0

我現在有一個類似的設置,可以看到漢堡圖標。屏幕截圖是從我點擊漢堡包圖標並且出現主視圖彈出窗口時開始的...漢堡包圖標不再需要再次點擊並使主視圖消失。 – jkh

+0

我不確定我是否理解100%的問題。也許你需要改變MasterBehavior屬性。棱鏡對圖標或修改頁面顯示沒有做任何事情。所以這不是一個棱鏡問題https://developer.xamarin.com/guides/xamarin-forms/user-interface/navigation/master-detail-page/#Controlling_the_Detail_Page_Display_Behavior –

+0

我添加了幾個截圖來顯示我的差異看到。當我將我的主細節頁面從Prism應用程序中取出時,它的工作方式與Xamarin示例應用程序中的相同,因此我不確定是否存在與Prism有關的內容,以便在導航欄主人顯示,或其他事情正在進行。 – jkh

相關問題