首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在xamarin.iOS中的标签上应用自定义字体

在xamarin.iOS中的标签上应用自定义字体
EN

Stack Overflow用户
提问于 2018-05-18 17:35:15
回答 2查看 773关注 0票数 0

我想在所有的标签和条目中应用蒙特萨拉特-光字体样式,我是通过使控件的渲染器来做到这一点的。EntryRenderer工作正常,但LabelRenderer提供的值为ArgumentNullException,消息为: Value不能为空。

代码语言:javascript
复制
  [assembly: ExportRenderer(typeof(Label), typeof(ExtendedLabelRenderer))]
namespace NewApp.iOS.Renderer
{
public class ExtendedLabelRenderer : LabelRenderer
{

    protected override void OnElementChanged(ElementChangedEventArgs<Label> e)
    {
        base.OnElementChanged(e);
        if (e.NewElement != null)
        {

            Control.Font = UIFont.FromName("Montserrat-Light", 10f);

        }
    }
}
}
EN

回答 2

Stack Overflow用户

发布于 2018-05-18 18:00:59

试试下面的代码。如果你没有在你的XAML中指定font-family和size,它将会更新。现在还可以在XAML中进行设置。

代码语言:javascript
复制
 public class CustomLabelRender : LabelRenderer
{
    protected override void OnElementChanged(ElementChangedEventArgs<Label> e)
    {
        base.OnElementChanged(e);
        if (Control != null)
        {
            if (e.NewElement != null)
            {
                if (!String.IsNullOrEmpty(Element.FontFamily))
                    Control.Font = UIFont.FromName(this.Element.FontFamily, (nfloat)e.NewElement.FontSize);
            }
        }
    }

}
票数 0
EN

Stack Overflow用户

发布于 2018-05-18 20:51:31

作为解决这个问题的一种更简单的方法,我建议使用Label元素和/或免费的开源Forms9Patch NuGet包的CustomFontEffect。它允许您将自定义字体作为嵌入资源存储在Xamarin.Forms应用程序的跨平台项目(.NetStandard、PCL或共享库)中,然后将该字体的嵌入资源ID设置为具有FontFamily属性的任何Xamarin.Forms元素的FontFamily

代码语言:javascript
复制
var entry = new Xamarin.Forms.Entry {
    Text = "Xamarin.Forms.Entry element",
    FontFamily = "Forms9PatchDemo.Resources.Fonts.Pacifico.ttf"
};
entry.Effects.Add(Effect.Resolve("Forms9Patch.CustomFontEffect"));

var label = new Forms9Patch.Label
{
    Text = "Custom Font Text",
    FontFamily = "Forms9PatchDemo.Resources.Fonts.Pacifico.ttf"
}

完全公开:我是这个包的作者。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50408232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档