如何在ToolbarItem OnPlatform标记上绑定Xamarin.Forms中的图像图标
这是我的密码:
<ToolbarItem
Icon="{OnPlatform iOS='iconscalendarplus64.png', Android='iconscalendarplus64.png'}"
Priority="0"
Order="Primary"
Command="{Binding PrikaziCommand}"我正试图为Android OnPlatform绑定图像,但它不起作用。
发布于 2020-02-03 12:30:55
因为Android和iOS属性的OnPlatform不是BindableProperty
它们不支持数据绑定。因此,您不能绑定这些属性。
作为另一种选择,您可以将特定于平台的映像源设置为ViewModel中的一个属性,而不是设置它。
XAML
<ContentPage.ToolbarItems>
<ToolbarItem IconImageSource="{Binding PlatformSpecificImage}"/>
</ContentPage.ToolbarItems>视图模型
public ImageSource PlatformSpecificImage { get; set; }
public ViewModel()
{
if(Device.RuntimePlatform == Device.Android)
{
PlatformSpecificImage = "android_image.png";
}
else
{
PlatformSpecificImage = "iOS_image.png";
}
}希望这能帮上忙!
发布于 2020-02-03 10:24:57
最简单的方法是:
<ToolbarItem.Icon>
<OnPlatform x:TypeArguments="ImageSource">
<OnPlatform.iOS><FileImageSource File=""icon.png""/></OnPlatform.iOS>
<OnPlatform.Android><FileImageSource File=""icon.png""/></OnPlatform.Android>
<OnPlatform.WinPhone><FileImageSource File=""Images/icon.png""/></OnPlatform.WinPhone>
</OnPlatform>
</ToolbarItem.Icon>好的是您可以在这里使用所有4种类型的基于平台的ImageSource。
如果你有疑问的话,祝你好运。
https://stackoverflow.com/questions/60036788
复制相似问题