问题描述
通过在我的xamarin表单的 resources.Android文件中添加代码,将其变成小写文本。
<item name="android:textAllCaps">false</item>
它在设计器中是大写的,但是在部署时正是我想要的。但是我也希望它在设计器中为小写字母,以便我可以看到发生了什么。
部署 我不知道如何在手机上拍摄照片,只是将其想象成上面但小写的图像。
所以我希望它在设计器中也要小写。我该怎么做?
这在我导入自定义字体时也适用。这是我朋友而不是我的样子:
我正在寻找XAMARIN.FORMS解决方案。不自然。谢谢 谢谢,
您好,狮子座,我收到此错误:
也许我将启用热重装吗?
解决方法
如果您查看了源代码,就会发现在主题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之前
使用customrenderer之后