簡體   English   中英

Xamarin表單-iOS上的菜單圖標

[英]Xamarin forms - Menu icon on ios

我有這個MasterDetailPage

在UWP和Android上,菜單的左上圖標正確顯示,但在iOS上顯示標簽“菜單”。

我在xcassets內有一個“漢堡包”圖像,我想使用它。

我該如何運作?

<?xml version="1.0" encoding="utf-8" ?>
<MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms"
            xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
            xmlns:views="clr-namespace:Menu_TEST.Views"
            x:Class="Menu_TEST.Views.MainPage">

    <MasterDetailPage.Master>
        <views:MenuPage />
    </MasterDetailPage.Master>

    <MasterDetailPage.Detail>
        <NavigationPage>
            <NavigationPage.Icon>
                <OnPlatform x:TypeArguments="FileImageSource">
                    <On Platform="iOS" Value="Hamburger"/>
                </OnPlatform>
            </NavigationPage.Icon>
            <x:Arguments>
                <views:ItemsPage />
            </x:Arguments>
        </NavigationPage>
    </MasterDetailPage.Detail>
</MasterDetailPage>

我在xcassets中有一個“漢堡包”圖像,我想使用它。

如果要從xcassets獲取圖像,可以參考此討論。但是,在MasterDetailPage.Master這可能無法正常工作。因此建議更好地使用Resources文件夾中的圖像。

<MasterDetailPage.Master>
   <views:MenuPage />
</MasterDetailPage.Master>

在您的代碼中, MenuPage被設置為MasterDetailPage.Master屬性。 如果要在左上方設置圖標,則需要在MenuPage.xaml中進行如下設置。

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="AppMasterDetail.Views.MenuPage"
             Title="Menu"
             Icon="hamburger.png"> //Here set icon ,image from 'Resources' folder

    <StackLayout VerticalOptions="FillAndExpand">
        <ListView x:Name="ListViewMenu"
                    HasUnevenRows="True">
            <ListView.ItemTemplate>
                <DataTemplate>
                    <ViewCell>
                        <Grid Padding="10">
                            <Label Text="{Binding Title}" FontSize="20"/>
                        </Grid>
                    </ViewCell>
                </DataTemplate>
            </ListView.ItemTemplate>
        </ListView>
    </StackLayout>
</ContentPage>

如果項目中沒有此hamburger.png ,則還可以設置標題,例如CGPA6.4這樣。

<?xml version="1.0" encoding="utf-8" ?>
    <ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
                 xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
                 x:Class="AppMasterDetail.Views.MenuPage"
                 Title="☰">  //Here change 'Menu' to '☰'
        ...

 </ContentPage>

這是帶有樣本 的正式文檔 ,您可以參考。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM