Icone tabbedPage in Windows

Download Sample Scaricare l'esempio

Questa piattaforma UWP (Universal Windows Platform) specifica della piattaforma consente la visualizzazione delle icone di pagina su una TabbedPage barra degli strumenti e consente di specificare facoltativamente le dimensioni dell'icona. Viene utilizzata in XAML impostando la TabbedPage.HeaderIconsEnabled proprietà associata su truee, facoltativamente, impostando la TabbedPage.HeaderIconsSize proprietà associata su un Size valore:

<TabbedPage ...
            xmlns:windows="clr-namespace:Xamarin.Forms.PlatformConfiguration.WindowsSpecific;assembly=Xamarin.Forms.Core"
            windows:TabbedPage.HeaderIconsEnabled="true">
    <windows:TabbedPage.HeaderIconsSize>
        <Size>
            <x:Arguments>
                <x:Double>24</x:Double>
                <x:Double>24</x:Double>
            </x:Arguments>
        </Size>
    </windows:TabbedPage.HeaderIconsSize>
    <ContentPage Title="Todo" IconImageSource="todo.png">
        ...
    </ContentPage>
    <ContentPage Title="Reminders" IconImageSource="reminders.png">
        ...
    </ContentPage>
    <ContentPage Title="Contacts" IconImageSource="contacts.png">
        ...
    </ContentPage>
</TabbedPage>

In alternativa, può essere usato da C# usando l'API Fluent:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.WindowsSpecific;
...

public class WindowsTabbedPageIconsCS : Xamarin.Forms.TabbedPage
{
  public WindowsTabbedPageIconsCS()
  {
    On<Windows>().SetHeaderIconsEnabled(true);
    On<Windows>().SetHeaderIconsSize(new Size(24, 24));

    Children.Add(new ContentPage { Title = "Todo", IconImageSource = "todo.png" });
    Children.Add(new ContentPage { Title = "Reminders", IconImageSource = "reminders.png" });
    Children.Add(new ContentPage { Title = "Contacts", IconImageSource = "contacts.png" });
  }
}

Il TabbedPage.On<Windows> metodo specifica che questa piattaforma verrà eseguita solo nel piattaforma UWP (Universal Windows Platform). Il TabbedPage.SetHeaderIconsEnabled metodo, nello spazio dei Xamarin.Forms.PlatformConfiguration.WindowsSpecific nomi , viene usato per attivare o disattivare le icone di intestazione. Il TabbedPage.SetHeaderIconsSize metodo specifica facoltativamente le dimensioni dell'icona dell'intestazione con un Size valore .

Inoltre, la TabbedPage classe nello spazio dei Xamarin.Forms.PlatformConfiguration.WindowsSpecific nomi include anche un EnableHeaderIcons metodo che abilita le icone di intestazione, un DisableHeaderIcons metodo che disabilita le icone di intestazione e un IsHeaderIconsEnabled metodo che restituisce un boolean valore che indica se le icone dell'intestazione sono abilitate.

Il risultato è che le icone di pagina possono essere visualizzate su una TabbedPage barra degli strumenti, con le dimensioni dell'icona impostate facoltativamente su una dimensione desiderata:

TabbedPage icons enabled platform-specific