1,app:errorEnabled 属性,

下图是没有设置app:errorEnabled属性的情况(app:errorEnabled默认为false)

TextInputLayout总结

 下图设置app:errorEnabled属性为true的情况,可以看到内容(我是EditText的内容)下方多出了一块蓝色区域,该区域用于展示错误信息。

TextInputLayout总结

上面的两张图是 TextInputLayout 和 EditText都是wrap_content 的情况下,设置了app:errorEnabled属性为true,TextInputLayout就会自动多出一部分区域用于展示错误信息。

然而,当TextInputLayout 设置了一定的高度,足够在下方展示错误信息而不被EditText遮挡时,设置app:errorEnabled属性为true就不会再自动多出一部分区域用于展示错误信息。如下图所示,设置TextInputLayout为100dp

并且可以看到另一个现象(知识点),当TextInputLayout 和 EditText 同时设置hint时,以TextInputLayout 的为准,显示的是设置在TextInputLayout 的提示

并且,在只设置EditText 的hint时,运行到手机上,手动将EditText 的内容清空,提示不出再显示在EditText 中,同时设置TextInputLayout 和 EditText 的提示时,手动将EditText 的内容清空,EditText 的提示会显示在EditText 中

TextInputLayout总结

2,总结。。。坑货,

2.1 android:hint="我是提示" 无论设置到 TextInputLayout 还是 EditText 上 效果都是一样的
2.2 app:hintEnabled="true"属性默认是true,如果设置为false,提示就不会”跑到上方“,就像普通的EditText 一样。

2.3   app:hintAnimationEnabled="true",默认也是true的

2.4  app:passwordToggleEnabled="false" 为false,设置为true会显示秘密可见的开关的小图片,也会是EditText 变高很多,就如上下方向加了padding一样, 应该是因为显示密码开关图片的缘故了

3. ConstraintLayout 内嵌套控件

如下图所以,外层的ConstraintLayout 的宽高都是wrap_content,内层的ImageView宽高都是match_parent,而显示却是下面的效果,可以理解为,在ConstraintLayout宽高 是wrap_content 的情况下,内存的match_parent 是不起作用的,这种情况和LinearLayout类似,而外层如果是RelativeLayout,就会充满整个页面。

TextInputLayout总结

 

相关文章:

  • 2021-10-10
  • 2021-11-25
  • 2022-12-23
  • 2022-02-25
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-01
猜你喜欢
  • 2021-06-13
  • 2021-10-23
  • 2021-10-16
  • 2021-10-03
  • 2021-11-04
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案