0
如何水平居中TextInputLayout錯誤?水平居中顯示TextInputLayout錯誤
我遇到了一個SO帖子,建議使用反射來獲取對錯誤textview的引用。我想避免使用反思。
有什麼方法可以實現這個目標?
如何水平居中TextInputLayout錯誤?水平居中顯示TextInputLayout錯誤
我遇到了一個SO帖子,建議使用反射來獲取對錯誤textview的引用。我想避免使用反思。
有什麼方法可以實現這個目標?
您製作一個自己的類,它繼承自TextInputLayout。然後重寫ShowError(字符串文本,可繪製圖標)方法。如果錯誤被調用,則使用錯誤將textView居中。
public class TextInputLayout_Center : TextInputLayout
{
public override void ShowError(string text, Android.Graphics.Drawables.Drawable icon)
{
base.ShowError(text, icon);
centerErrorMessage(this);
}
void centerErrorMessage(ViewGroup view)
{
for (int i = 0; i < view.ChildCount; i++)
{
View v = view.GetChildAt(i);
if (v.GetType() == typeof(TextView))
{
v.LayoutParameters = new LayoutParams(ViewGroup.LayoutParams.MatchParent, v.LayoutParameters.Height);
((TextView)v).Gravity = GravityFlags.CenterHorizontal;
((TextView)v).TextAlignment = TextAlignment.Center;
}
if (v is ViewGroup)
{
centerErrorMessage((ViewGroup)v);
}
}
}
}
您是否找到解決方案? –