首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xamarin在设计师预览上形成小写按钮?(未呈现自定义组件)

Xamarin在设计师预览上形成小写按钮?(未呈现自定义组件)
EN

Stack Overflow用户
提问于 2020-09-18 04:42:42
回答 1查看 450关注 0票数 0

我有一个应用程序,上面有一个按钮,上面写着“点击我”。

通过在xamarin窗体的resources.Android文件中添加代码,我把它变成了小写文本。

代码语言:javascript
复制
<item name="android:textAllCaps">false</item>

它是大写的设计师,但当部署它是我想要的。但我也希望它在设计师中是小写的,这样我就可以看到发生了什么。

Designer

Deployment我不知道如何在电话中拍摄剪贴画,但是可以想象一下上面的图像,但更低的情况。

所以我希望它在设计师中也是小写的。我该怎么做?

这也适用于我导入自定义字体时。对我的朋友来说是这样,但对我来说却不是这样:

我也得到了这个问题的原因:

我在找XAMARIN.FORMS SOLTUON。不是本地人。谢谢谢谢

你好,利奥,我收到一个错误:

也许我会启用热装?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-21 08:05:49

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

您可以编写一个CustomRenderer来更改它。

在Android项目和CustomButtonRenderer中创建一个SetAllCaps(false)

代码语言:javascript
复制
[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);
        }
    }
  }
}

更新

代码语言:javascript
复制
<Button WidthRequest="100" Text="Login" />

在使用自定义呈现器之前

使用自定义呈现器后

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

https://stackoverflow.com/questions/63949444

复制
相关文章

相似问题

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