在使用TabLayout过程中发现一个奇葩的bug,说我xml布局文件有问题。

1、完整log
2019-12-30 16:50:41.426 9068-9068/? E/ActivityThread: Failed to find provider info for com.mirrorlink.android.provider
2019-12-30 16:50:41.586 10184-10184/? E/AndroidRuntime: FATAL EXCEPTION: mainjava.lang.RuntimeException: Unable to start activity ComponentInfo{com.ut.smartcook/com.ut.smartcook.MainActivity}:  android.view.InflateException: Binary XML file line  #24: Binary XML file line  #24: Error inflating class com.google.android.material.tabs.TabLayoutat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3021)at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3156)at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1864)at android.os.Handler.dispatchMessage(Handler.java:106)at android.os.Looper.loop(Looper.java:205)at android.app.ActivityThread.main(ActivityThread.java:6991)at java.lang.reflect.Method.invoke(Native Method)at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:884)Caused by: android.view.InflateException: Binary XML file line   #24: Binary XML file line #24: Error inflating class com.google.android.material.tabs.TabLayoutCaused by: android.view.InflateException: Binary XML file line   #24: Error inflating class com.google.android.material.tabs.TabLayoutCaused by: java.lang.reflect.InvocationTargetExceptionat java.lang.reflect.Constructor.newInstance0(Native Method)at java.lang.reflect.Constructor.newInstance(Constructor.java:343)at android.view.LayoutInflater.createView(LayoutInflater.java:647)at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:790)at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)at android.view.LayoutInflater.rInflate(LayoutInflater.java:863)at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)at android.view.LayoutInflater.rInflate(LayoutInflater.java:866)at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)at android.view.LayoutInflater.inflate(LayoutInflater.java:515)at android.view.LayoutInflater.inflate(LayoutInflater.java:423)at android.view.LayoutInflater.inflate(LayoutInflater.java:374)at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:435)at android.app.Activity.setContentView(Activity.java:2777)at com.ut.smartcook.MainActivity.onCreate(MainActivity.java:34)at android.app.Activity.performCreate(Activity.java:7159)at android.app.Activity.performCreate(Activity.java:7150)at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1272)at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3001)at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3156)at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1864)at android.os.Handler.dispatchMessage(Handler.java:106)at android.os.Looper.loop(Looper.java:205)at android.app.ActivityThread.main(ActivityThread.java:6991)at java.lang.reflect.Method.invoke(Native Method)at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:884)Caused by: java.lang.NullPointerException: Attempt to invoke virtual method   'int android.content.res.ColorStateList.getDefaultColor()' on a null object referenceat com.google.android.material.tabs.TabLayout.<init>(TabLayout.java:548)at com.google.android.material.tabs.TabLayout.<init>(TabLayout.java:461)at java.lang.reflect.Constructor.newInstance0(Native Method) at java.lang.reflect.Constructor.newInstance(Constructor.java:343) at android.view.LayoutInflater.createView(LayoutInflater.java:647) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:790) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730) at android.view.LayoutInflater.rInflate(LayoutInflater.java:863) at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824) at android.view.LayoutInflater.rInflate(LayoutInflater.java:866) at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824) at android.view.LayoutInflater.inflate(LayoutInflater.java:515) at android.view.LayoutInflater.inflate(LayoutInflater.java:423) at android.view.LayoutInflater.inflate(LayoutInflater.java:374) at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:435) at android.app.Activity.setContentView(Activity.java:2777) at com.ut.smartcook.MainActivity.onCreate(MainActivity.java:34) at android.app.Activity.performCreate(Activity.java:7159) at android.app.Activity.performCreate(Activity.java:7150) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1272) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3001) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3156) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1864) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:205) at android.app.ActivityThread.main(ActivityThread.java:6991) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:884)
2、关键log
Caused by: android.view.InflateException: Binary XML file line #24: Binary XML file line
#24: Error inflating class com.google.android.material.tabs.TabLayout
Caused by: android.view.InflateException: Binary XML file line
#24: Error inflating class com.google.android.material.tabs.TabLayout
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method
'int android.content.res.ColorStateList.getDefaultColor()' on a null object referenceat com.google.android.material.tabs.TabLayout.<init>(TabLayout.java:548)

大概意思是说Tablayout初始化时,tabTextColors = createColorStateList(tabTextColors.getDefaultColor(), selected);
tabTextColors为空。

3、解决办法

app:tabTextColor="#81858B"
app:tabSelectedTextColor="#31353B"

将tabTextColor放在tabSelectedTextColor之前声明即可,如果没在配置好tabTextColor之后配置tabSelectedTextColor会报错!

Android~记录material.tabs.TabLayout一个bug相关推荐

  1. TabLayout使用介绍(com.google.android.material.tabs.TabLayout)

    TabLayout TabLayout的使用 一.控件库的导入 二.基本使用 activity_main.xml TabFragment.java MainActivity.java 三.TabLay ...

  2. com.google.android.material.tabs.TabLayout 选择tab 加粗字体加大

    引用: https://blog.csdn.net/qq_34906385/article/details/93524163 <com.google.android.material.tabs. ...

  3. Android学习笔记 56. TabLayout 选项卡布局

    Android学习笔记 Android基础开发--布局 文章目录 Android学习笔记 Android基础开发--布局 56. TabLayout 选项卡布局 56.1 简介 56.2 TabIte ...

  4. android之ViewPager与TabLayout

    使用 TabLayout 很容易实现选项卡的功能.这里将结合 ViewPager.Fragment.TabLayout实现一个具有选项卡功能的程序.本例再上篇讲解的ViewPager与Fragment ...

  5. Android Material Design TabLayout属性app:tabMode和app: tabGravity

    Android Material Design TabLayout属性app:tabMode和app: tabGravity Android Material Design 中的TabLayout有两 ...

  6. 记录一个bug 关于 java 解压缩包 写入本地报错 :java.io.FileNotFoundException(系统找不到指定的路径。)

    记录一个bug 关于 java 解压缩包 写入本地报错 :java.io.FileNotFoundException(系统找不到指定的路径.) 第一想法是路径问题: 1.检查文件路径是否正确 2.另外 ...

  7. 从 Android 静音看正确的查bug的姿势?

    0.写在前面 没抢到小马哥的红包,无心回家了,回公司写篇文章安慰下自己TT..话说年关难过,bug多多,时间久了难免头昏脑热,不辨朝暮,难识乾坤...艾玛,扯远了,话说谁没踩过坑,可视大家都是如何从坑 ...

  8. 从 Android 静音看正确的查找 bug 的姿势

    0.写在前面 没抢到小马哥的红包,无心回家了,回公司写篇文章安慰下自己TT..话说年关难过,bug多多,时间久了难免头昏脑热,不辨朝暮,难识乾坤...艾玛,扯远了,话说谁没踩过坑,可视大家都是如何从坑 ...

  9. Android 利用Intent启动另一个app应用时,一个崩溃的问题

    今天在做Launcher项目时,需要显示所有app,并且点击调用,在调用时,遇到一个崩溃问题.在此做一记录. 问题:在本地写的一个demo应用,里面有一个bug,点击这个demo应用,应用崩溃.在la ...

最新文章

  1. Jackson 注解 -- 忽略空字段
  2. mysql opensuse_opensuse免安装mysql
  3. leetcode —— 866. 回文素数
  4. Composer/Packagist 最新国内源
  5. (原创)我眼中的设计模式系列之外观模式(二)
  6. 《逻辑与计算机设计基础(原书第5版)》——1.7 格雷码
  7. IDEA主题分享与代码颜色设置
  8. Java毕设项目直播购物平台(java+VUE+Mybatis+Maven+Mysql)
  9. system/build.prop参数说明
  10. 百度-还可以这样玩!
  11. ASUS华硕笔记本FN快捷键无法调节屏幕亮度
  12. RxJavaAndroid学习笔记
  13. bzoj3899 弦论
  14. 关于创建电子邮件链接时如何发送邮件内容
  15. 什么是最好的在线UML软件工具?
  16. Python面试——基础面试题
  17. DOS命令不需格式化U盘-FAT32轻松转换成NTFS
  18. CSS-div水平居左-居右-居中显示
  19. Part-Ⅰ3. 稳态等效电路建模/损耗/效率(三)
  20. 四川子苗电商:抖音直播安心购怎么解约?

热门文章

  1. IService和他的多个ServiceImpl
  2. flutter Vertical viewport was given unbounded height
  3. 运动爱好者的专属耳机,轻巧时尚又好用,哈氪无界上手
  4. android百度语音导航开放
  5. 类似qq的图片查看器
  6. 【python】猫眼爬虫Top100电影信息
  7. CSS单行/多行文本溢出隐藏
  8. 利用MP实现分页查询
  9. 公共计算机课程教学情况调查问卷,大学计算机基础课程教学内容的调查分析论文...
  10. List.add 方法添加元素时只会添加最后一条元素的问题与解决