开发中用到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">
<!--&lt;!&ndash; 默认状态提示颜色和字体&ndash;&gt;-->
<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">
<!--&lt;!&ndash; 默认状态提示颜色和字体&ndash;&gt;-->
<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>
												

TextInputLayout低版本bug :“android.view.InflateException: Binary XML file line #6 : Error inflating class Textview”的更多相关文章

  1. bug_ _ android.view.InflateException: Binary XML file line #2: Error inflating class <unknown

    ========= 5.0     android异常“android.view.InflateException: Binary XML file line # : Error inflating ...

  2. Android项目部署时,发生AndroidRuntime:android.view.InflateException: Binary XML file line #168: Error inflating class错误

    这个错误也是让我纠结了一天,当时写的项目在安卓虚拟机上运行都很正常,于是当我部署到安卓手机上时,点击登陆按钮跳转到用户主界面的时候直接结束运行返回登陆界面.    当时,我仔细检查了一下自己的代码,并 ...

  3. java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ex.activity/com.ex.activity.LoginActivity}: android.view.InflateException: Binary XML file line #1: Error inflating class

    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ex.activity/com.ex.activity.L ...

  4. Caused by: android.view.InflateException: Binary XML file line #12: Error inflating class android.support.design.widget.TabLayout,TableLayout引起页面崩溃

    在使用TableLayout的时候,运行引用程序直接Crash. FATAL EXCEPTION: main Process: com.edaixi.activity, PID: 9703 java. ...

  5. widget自定义控件【android.view.InflateException: Binary XML file line #2: Error inflating class...】

    此错误比较难定位,场景是这样的:在一个widget中使用了自定义控件,始终会报 android.view.InflateException: Binary XML file line #2: Erro ...

  6. 错误解决:android.view.InflateException: Binary XML file line #11: Error inflating class com.tony.timepicker.TimePicker

    今天在做项目开发时遇到这么一个错误,完整的错误提示信息如下: java.lang.RuntimeException: Unable to start activity ComponentInfo{co ...

  7. android.view.InflateException: Binary XML file line #34: Error inflating class

    问题一般出在xml的第三方View的全类名,你可能是直接粘贴过来的,没有改成自己项目的全类名.

  8. 【Android开发实践】android.view.InflateException: Binary XML file line #12: Error inflating class fragment问题解决

    一般出现的原因是fragment引入的包错了,应该是import android.app.ListFragment;而不是import android.support.v4.app.ListFragm ...

  9. android.view.InflateException: Binary XML file line #7: Error inflating class(OOM)

    由于页面含有ImageView引起的内存溢出. 作如下处理:在OnDestroy中 Drawable d = imageView.getDrawable(); if (d != null) d.set ...

随机推荐

  1. (译)Objective-C的动态特性

    这是一篇译文,原文在此,上一篇文章就是受这篇文章启发,这次干脆都翻译过来. 过去的几年中涌现了大量的Objective-C开发者.有些是从动态语言转过来的,比如Ruby或Python,有些是从强类型 ...

  2. Python发送邮件(带附件的)

    有时候做自动化测试任务,任务完成后,需要将结果自动发送一封邮件,这里用到smtplib模块,直接导入就行,这里以163邮箱为例,需要用到授权码,我用类写一下: 如果是发送qq邮箱,要将smtp 改成s ...

  3. spring调试

    spring-beans DefaultListableBeanFactory preInstantiateSingletons:650 RequestMappingHandlerMapping Ab ...

  4. python 使用异常代替返回状态码

  5. 实现一个简易的promise

    //promise里面只有三个状态,且三个状态的转换形式有两种 //由pending转换为fulfilled,由pending转换为rejected //Promise的构造函数参数是一个函数,函数的 ...

  6. android去掉layout顶部的阴影(状态栏下边的阴影)

    http://blog.csdn.net/kepoon/article/details/7207100

  7. Android EditText____TextchangedListener

    今天在做APP的时候有个需求: EditText 动态监听内容变化如果长度为6时(就是看是不是验证码) 判断是否正确 正确就跳到下一个Activity,但是在Activity.finish()的时候, ...

  8. python元组和range

    1.元组 1)元组介绍 元组: 俗称不可变的列表.⼜被成为只读列表, 元组也是python的基本数据类型之⼀, ⽤⼩括号括起来, ⾥⾯可以放任何数据类型的数据, 查询可以. 循环也可以. 切片也可以. ...

  9. Android ListView显示底部的分割线

    有些时候,我们会提出这样的需求,希望ListView显示底部(顶部)的分割线,这样做,会使得UI效果更加精致,如下图所示: 如果搜索资料,大家会搜到一堆相关的方法,最多的莫过于设置listview的f ...

  10. hdu 2662 Coin

    Coin Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...