标签:InflateException Binary TextInputLayout color snow 报错 android white
开发中用到TextInputLayout配合TextInputEdittext做输入框,在android7.0 android8.0手机上运行正常,在异步android5.0.2的手机上,点击输入框就报错:“android.view.InflateException: Binary XML file line #6 : Error inflating class Textview”。而实际上报错的xml并非是当前页面的布局文件,因为布局里面textview根本就没有设置其他属性,经过各种排查,最后发现问题出现在给TextInputLayout设置主题属性的时候,通常我们会通过此方法更改提示文字的样式和下划线的样式
android:theme="@style/txt_lab"
txt_lab为我用到的样式,最开始是这个样子的
<style name="txt_lab" parent="TextAppearance.AppCompat"> <!--<!– 默认状态提示颜色和字体–>--> <item name="android:textColorHint">@color/white</item> <item name="android:textSize">15sp</item> <!--下面可以根据需要设置,如果没有将默认使用默认theme的颜色--> <!--Label标签的颜色--> <item name="colorAccent">@color/white</item> <!-- 默认状态状态设置底线颜色 --> <item name="colorControlNormal">@color/white</item> <!-- 选择的底线颜色 --> <item name="colorControlActivated">@color/white</item> <item name="passwordToggleTint">@color/snow</item> <item name="colorControlHighlight">@color/snow</item> </style>
注意他的parent我设置的是TextAppearance,就会出现文中提到的bug
修改成下面的Theme.Appcompat就行了
<style name="txt_lab" parent="Theme.AppCompat.Light.NoActionBar"> <!--<!– 默认状态提示颜色和字体–>--> <item name="android:textColorHint">@color/white</item> <item name="android:textSize">15sp</item> <!--下面可以根据需要设置,如果没有将默认使用默认theme的颜色--> <!--Label标签的颜色--> <item name="colorAccent">@color/white</item> <!-- 默认状态状态设置底线颜色 --> <item name="colorControlNormal">@color/white</item> <!-- 选择的底线颜色 --> <item name="colorControlActivated">@color/white</item> <item name="passwordToggleTint">@color/snow</item> <item name="colorControlHighlight">@color/snow</item> </style>
标签:InflateException,Binary,TextInputLayout,color,snow,报错,android,white 来源: https://www.cnblogs.com/yjpjy/p/11022049.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。