0
我有一個應用程序使用主詳細信息頁面和其中的導航頁面。在Android上,當您通過漢堡菜單導航到帳戶頁面時,導航欄會按預期保持在屏幕的頂部,以便您可以使用它進行導航。在iOS上,導航欄消失,所以我創建了一個帶有漢堡菜單圖標的自定義欄。當有人點擊自定義導航欄上的圖標時,我想讓漢堡菜單從左側滑出。使用Xamarin表單 - 如何將按鈕點擊到滑動手勢?
我已經給漢堡圖標附加了一個手勢識別器,但我不知道要在被調用的方法中放置什麼以使其執行滑動操作。
第二頁上導航欄:
<StackLayout IsVisible="{Binding _isiPhone}" Orientation="Horizontal" BackgroundColor="#008334">
<Image Source="burger.png" HorizontalOptions="StartAndExpand">
<Image.GestureRecognizers>
<TapGestureRecognizer Tapped="Burger_Clicked"></TapGestureRecognizer>
</Image.GestureRecognizers>
</Image>
</StackLayout>
事件處理程序:
private void Burger_Clicked(object sender, EventArgs e)
{
}
Android設備上查看:
安卓漢堡菜單視圖:
的iOS預覽(自定義導航欄):
的iOS漢堡菜單:
對不起,內頁是一個內容頁沒有導航頁面。 我不知道如何從帳戶頁面訪問IsPresented屬性? – NinjaFocks
您可以將Application.Current.MainPage強制轉換爲MasterDetailPage。所以像((MasterDetailPage)Application.Current.MainPage).IsPresented = true;應顯示滑出抽屜。 當然,如果您的MasterDetailPage始終位於您的應用程序的根目錄下,那麼您應該只使用這種方法。您可能需要測試它,或以不同的方式存儲參考,無論適合您的項目,並且是您應用程序體系結構中最乾淨和最簡單的解決方案。 – irreal