Windows での TabbedPage アイコン
このユニバーサル Windows プラットフォームのプラットフォーム固有設定により、ページ アイコンが TabbedPage
ツールバーに表示されるようになり、必要に応じてアイコン サイズを指定できるようになります。 TabbedPage.HeaderIconsEnabled
添付プロパティを true
に設定し、必要に応じて TabbedPage.HeaderIconsSize
添付プロパティを値 Size
に設定することで、XAML で使用されます。
<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>
あるいは、Fluent API を使用して C# から使用することもできます。
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" });
}
}
TabbedPage.On<Windows>
メソッドでは、このプラットフォーム固有設定がユニバーサル Windows プラットフォームでのみ実行されるように指定します。 Xamarin.Forms.PlatformConfiguration.WindowsSpecific
名前空間では、TabbedPage.SetHeaderIconsEnabled
メソッドが、ヘッダー アイコンのオンとオフを切り替えるために使用されます。 TabbedPage.SetHeaderIconsSize
メソッドは、必要に応じて、ヘッダー アイコンのサイズを Size
の値で指定します。
さらに、TabbedPage
名前空間の Xamarin.Forms.PlatformConfiguration.WindowsSpecific
クラスには、ヘッダー アイコンを有効にする EnableHeaderIcons
メソッド、ヘッダー アイコンを無効にする DisableHeaderIcons
メソッド、ヘッダー アイコンが有効かどうかを示す値 boolean
を返す IsHeaderIconsEnabled
メソッドもあります。
その結果、ページ アイコンは TabbedPage
ツール バーに表示されるようになり、アイコンのサイズは必要に応じて目的のサイズに設定されます。