【发布时间】:2018-02-15 08:45:52
【问题描述】:
我按照https://developer.xamarin.com/guides/xamarin-forms/user-interface/text/fonts/#Using_a_Custom_Font 的步骤操作。
在 UWP 上,我已将字体文件包含在 Assets/Fonts/DSEG7Modern-Regular.ttf 中(构建操作:内容。从不复制)。 Android 是在 Assets/DSEG7Modern-Regular.ttf (构建操作:AndroidAsset。从不复制)
代码
<Label Text="Hello Forms with XAML">
<Label.FontFamily>
<OnPlatform x:TypeArguments="x:String">
<OnPlatform.iOS>DSEG7Modern-Regular</OnPlatform.iOS>
<OnPlatform.Android>DSEG7Modern-Regular.ttf#DSEG7 Modern</OnPlatform.Android>
<OnPlatform.WinPhone>Assets/DSEG7Modern-Regular.ttf#DSEG7 Modern</OnPlatform.WinPhone>
</OnPlatform>
</Label.FontFamily>
</Label>
这可以在 Android 设备上正常运行。如果我在本地系统上安装字体,它也可以正常工作。如果我没有安装字体(我的用户不会),它将无法工作。
我也用后面的代码试过这个,它也不起作用。
private string GetDSEG7FontForCurrentDevice()
{
switch (Device.RuntimePlatform)
{
case Device.Windows:
case Device.WinPhone:
return "Assets/Fonts/DSEG7Modern-Regular.ttf#DSEG7 Modern";
case Device.Android:
return "DSEG7Modern-Regular.ttf#DSEG7 Modern";
case Device.iOS:
return "DSEG7Modern-Regular";
}
return MainLabel.FontFamily;
}
【问题讨论】:
标签: android xaml fonts uwp xamarin.forms