android - 从 TextInputLayout setError 文本中删除额外的填充/边距
问题描述
我正在使用 TextInputLayout 来显示 EditText 的错误。一切正常。我必须从 TextInputLayout 的错误文本中删除多余的空间。
到目前为止,我已经这样做了,
<android.support.design.widget.TextInputLayout
android:id="@+id/txt_error_passowrd"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
app:errorEnabled="true"
app:passwordToggleEnabled="true"
app:passwordToggleTint="@color/colorAccent"
app:errorTextAppearance="@style/error_appearance"
app:hintTextAppearance="@style/EditHintText">
<android.support.design.widget.TextInputEditText
android:id="@+id/edit_password"
android:layout_width="match_parent"
android:layout_height="@dimen/views_height"
android:fontFamily="@font/roboto_light"
android:hint="@string/password"
android:inputType="textPassword"
android:paddingLeft="10dp"
android:textColorHint="@color/light_text_color"
android:textSize="@dimen/font_14sp" />
</android.support.design.widget.TextInputLayout>
在 style.xml 里面我用过这个
<style name="EditHintText" parent="TextAppearance.Design.Hint">
<item name="android:textSize">@dimen/font_10sp</item>
<item name="android:textColor">@color/dark_text_color</item>
</style>
<style name="error_appearance" parent="@android:style/TextAppearance">
<item name="android:textColor">@color/red</item>
<item name="android:textSize">@dimen/font_10sp</item>
</style>
解决方案
您可以通过app:hintEnabled="false"
在 TextInputLayout 中使用来删除额外的填充。但是使用它会阻止提示超出,因为当提示文本超出时,额外的空间是用于提示文本的。
推荐阅读
- python - ValueError:形状必须为 2 级,但为 3 级
- forms - 为什么 MS-Access 在打开表单时会触发保存记录按钮的 Enter 事件?
- laravel - 递归关系角色 Laravel 5.6
- mysql-workbench - 创建标准形式的数据库
- javascript - 从数组 Javascript 中获取数据
- javascript - 检查分配了名称的套接字是否打开
- c++ - 在获得证书之前调用 OCSP 装订 cb
- php - 在 laravel 中对数据数组进行分页并在 vuejs 中使用无限滚动的最佳方法
- python - 删除数组的特定值:Python
- angularjs - 如何在angularjs中结合字母数字和特殊类来验证我的密码?