微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Xamarin在Designer的预览中形成小写按钮吗? 未呈现自定义组件

如何解决Xamarin在Designer的预览中形成小写按钮吗? 未呈现自定义组件

我有一个带有按钮的应用程序,该按钮的文字为“点击我”。

通过在我的xamarin表单的 resources.Android文件添加代码,将其变成小写文本。

<item name="android:textAllCaps">false</item>

它在设计器中是大写的,但是在部署时正是我想要的。但是我也希望它在设计器中为小写字母,以便我可以看到发生了什么。

设计师

enter image description here

部署 我不知道如何在手机上拍摄照片,只是将其想象成上面但小写的图像。

所以我希望它在设计器中也要小写。我该怎么做?

这在我导入自定义字体时也适用。这是我朋友而不是我的样子:

enter image description here

我也得到了这可能是问题的原因:

enter image description here

我正在寻找XAMARIN.FORMS解决方案。不自然。谢谢 谢谢,

您好,狮子座,我收到此错误

也许我将启用热重装吗?

enter image description here

解决方法

如果您查看了源代码,就会发现在主题Theme.AppCompat中,<item name="android:textAllCaps">true</item>的默认属性appcompat.widget.Button为true。

您可以编写一个CustomRenderer进行更改。

在您的Android项目中创建一个CustomButtonRenderer,然后SetAllCaps(false)

[assembly: ExportRenderer(typeof(Xamarin.Forms.Button),typeof(CustomButtonRenderer))]
namespace your namepace
{
  class CustomButtonRenderer :ButtonRenderer
  {
     public CustomButtonRenderer(Context context):base(context)
     {

     }


     protected override void OnElementChanged(ElementChangedEventArgs<Xamarin.Forms.Button> e)
      {
        base.OnElementChanged(e);
        if (Control != null)
        {
            Control.SetAllCaps(false);
        }
    }
  }
}

更新

<Button WidthRequest="100" Text="Login" />

在使用customrenderer之前

enter image description here

使用customrenderer之后

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。