gpt4 book ai didi

android - 在 Hint、TextInputLayout 上设置自定义字体

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:42:19 27 4
gpt4 key购买 nike

我正在尝试在 TextInputLayoutHint 上设置自定义字体。因此,我使用自定义子类 TextInputLayout 和自定义属性 MyHint。此属性 setter 应格式化文本并设置 FormattedText 但它不起作用。

如果我只是设置 FormattedHint 属性,它也不会格式化。有人知道为什么这些方法失败了吗?

下面你可以看到我的自定义类属性。

例子:

BaseTextInputLayout userNameInput = view.FindViewById<BaseTextInputLayout>(Resource.Id.myId);
userNameInput.MyHint = "My Custom hint text";

类:

   public class BaseTextInputLayout: TextInputLayout
{
public string MyHint
{
get
{
return Hint;
}
set {
if (value != null)
{
SpannableStringBuilder builder = new SpannableStringBuilder(value);
builder.SetSpan(new CustomTypeFaceSpan("", Constants_Android.TYPEFACE_YOGA_MET_EVY_CUSTOMFONT), 0, builder.Length(), SpanTypes.InclusiveExclusive);
this.HintFormatted = builder;
}
else
{
this.HintFormatted = null;
}
}
}

最佳答案

我想你需要使用:

userNameInput.Typeface = yourCustomTypeFace;

我看不出这个属性对你的子类有多大好处,尽管你当然可以这样做:

public class BaseTextInputLayout: TextInputLayout
{
public string MyHint
{
get
{
return Hint;
}
set {
if (value != null)
{
this.Typeface = yourCustomTypeFace;
this.Hint = value;
}
else
{
this.Hint = null;
}
}
}

关于android - 在 Hint、TextInputLayout 上设置自定义字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39393763/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com