TextInputLayout错误容器具有较大的高度。我想降低它的高度。我怎样才能做到这一点?
<android.support.design.widget.TextInputLayout
android:id="@+id/textInput"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/md_red_100"
android:layout_centerInParent="true"
app:errorEnabled="true"
android:padding="0dp"
app:hintEnabled="false">
<EditText
android:id="@+id/edittext"
style="@style/purpleNormalEdit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"
android:maxLines="1"
android:paddingBottom="10dp"
android:paddingRight="50dp"/>
</android.support.design.widget.TextInputLayout>
感谢
答案 0 :(得分:2)
我讨厌黑客攻击,但我没有找到一种实体方式来更改TextInputLayout
内的错误文本高度。因此,我提出了一个软弱的解决方案:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="72dp"
android:orientation="vertical">
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="-10dp"
app:errorEnabled="true">
<com.panera.bread.common.views.PaneraEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Generic Hint"
android:inputType="text"
android:maxLines="1" />
</android.support.design.widget.TextInputLayout>
</LinearLayout>
我通过将TextInputLayout
拍到高度固定的LinearLayout
来获得所需的身高TextInputLayout
。我的if($model->login()){
return [
"access_token' => Yii::$app->user->identity->getAuthKey(),
];
}
包含了它的高度内容,并通过设置负底边距来掩盖错误的重叠。
答案 1 :(得分:1)
如果您担心在为视图设置错误时不降低下面的视图,请尝试添加
app:helperText=" "
对于您的 TextInputLayout,由于错误占用相同的辅助文本空间,因此您不会有任何奇怪的高度问题。