TabbedPage-Symbole unter Windows

Beispiel herunterladen Das Beispiel herunterladen

Diese Universelle Windows-Plattform plattformspezifischen ermöglicht die Anzeige von Seitensymbolen auf einer TabbedPage Symbolleiste und bietet die Möglichkeit, optional die Symbolgröße anzugeben. Sie wird in XAML verwendet, indem Sie die TabbedPage.HeaderIconsEnabled angefügte Eigenschaft auf truefestlegen und optional die TabbedPage.HeaderIconsSize angefügte Eigenschaft auf einen Size Wert festlegen:

<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>

Alternativ kann sie über C# mit der Fluent-API genutzt werden:

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" });
  }
}

Die TabbedPage.On<Windows> -Methode gibt an, dass diese plattformspezifische Nur auf dem Universelle Windows-Plattform ausgeführt wird. Die TabbedPage.SetHeaderIconsEnabled -Methode im Xamarin.Forms.PlatformConfiguration.WindowsSpecific Namespace wird verwendet, um Headersymbole zu aktivieren oder zu deaktivieren. Die TabbedPage.SetHeaderIconsSize -Methode gibt optional die Größe des Headersymbols mit einem Size Wert an.

Darüber hinaus verfügt die TabbedPage Klasse im Namespace auch über eine EnableHeaderIcons Methode, die Xamarin.Forms.PlatformConfiguration.WindowsSpecific Headersymbole aktiviert, eine DisableHeaderIcons Methode, die Headersymbole deaktiviert, und eine IsHeaderIconsEnabled Methode, die einen boolean Wert zurückgibt, der angibt, ob Headersymbole aktiviert sind.

Das Ergebnis ist, dass Seitensymbole auf einer TabbedPage Symbolleiste angezeigt werden können, wobei die Symbolgröße optional auf eine gewünschte Größe festgelegt wird:

TabbedPage-Symbole aktiviert plattformspezifische