Caused by: android.view.InflateException: Binary XML file line

这篇具有很好参考价值的文章主要介绍了Caused by: android.view.InflateException: Binary XML file line。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、异常信息

Process: com.example.devbytes, PID: 32509
     android.view.InflateException: Binary XML file line #23 in com.example.devbytes:layout/devbyte_item: Binary XML file line #23 in com.example.devbytes:layout/devbyte_item: Error inflating class com.google.android.material.card.MaterialCardView
     Caused by: android.view.InflateException: Binary XML file line #23 in com.example.devbytes:layout/devbyte_item: Error inflating class com.google.android.material.card.MaterialCardView

2、分析流程

根据搜索以及分析,可以知道是因为 inflate layout file时出错,那么可能的原因是:文章来源地址https://www.toymoban.com/news/detail-765799.html

  1. 自定义View类定义出错,常见的为少了构建函数:public MyView(Context context,AttributeSet paramAttributeSet)。该错误是使用com.google.android.material.card.MaterialCardView时出错,所以不符合;
  2. 定义类引用为题:如写一个自定义view,引用的时候需要用完整路径;
  3. 资源文件不存在或者找不到。不存在比较好判别,存在但是找不到可能的原因是不同分辨率的drawable下文件夹的资源,如果只在一个文件下放了资源文件,不同的分辨率设备的会报错;
  4. 可能是编码问题;
  5. 内存泄漏;
  6. Application主题与组件风格不符合,比如application主题是Theme.AppCompat,但是组件却是com.google.android.material,这时,也可能出错(本文就是如此);
  7. 风格使用对象不对,比如TextViewText Style时,应该使用style,而不是android:style

3、所获

  1. 遇到layout file无法inflate时,应该尽可能地分析是什么原因导致无法使用,可能的原因就是某个地方出错,导致无法使用,可以考虑的方向:自定义View是否正确;属性是否设置正确;是否引用了不存在的资源;使用View方法是否正确;主题是否使用一致等。
  2. 仔细分析异常栈,由上向下,越往下,原因可能就更明显。

4、完整异常信息

  Process: com.example.devbytes, PID: 32509
  android.view.InflateException: Binary XML file line #23 in com.example.devbytes:layout/devbyte_item: Binary XML file line #23 in com.example.devbytes:layout/devbyte_item: Error inflating class com.google.android.material.card.MaterialCardView
  Caused by: android.view.InflateException: Binary XML file line #23 in com.example.devbytes:layout/devbyte_item: Error inflating class com.google.android.material.card.MaterialCardView
  Caused by: java.lang.reflect.InvocationTargetException
  	at java.lang.reflect.Constructor.newInstance0(Native Method)
  	at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
  	at android.view.LayoutInflater.createView(LayoutInflater.java:863)
  	at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1019)
  	at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:970)
  	at android.view.LayoutInflater.inflate(LayoutInflater.java:669)
  	at android.view.LayoutInflater.inflate(LayoutInflater.java:542)
  	at androidx.databinding.DataBindingUtil.inflate(DataBindingUtil.java:126)
  	at androidx.databinding.DataBindingUtil.inflate(DataBindingUtil.java:95)
  	at com.example.devbytes.ui.DevByteAdapter.onCreateViewHolder(DevByteFragment.kt:176)
  	at com.example.devbytes.ui.DevByteAdapter.onCreateViewHolder(DevByteFragment.kt:156)
  	at androidx.recyclerview.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:7078)
  	at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6235)
  	at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6118)
  	at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6114)
  	at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2303)
  	at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1627)
  	at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1587)
  	at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:665)
  	at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4134)
  	at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3851)
  	at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
  	at android.view.View.layout(View.java:23488)
  	at android.view.ViewGroup.layout(ViewGroup.java:6575)
  	at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
  	at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
  	at android.view.View.layout(View.java:23488)
  	at android.view.ViewGroup.layout(ViewGroup.java:6575)
  	at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
  	at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
  	at android.view.View.layout(View.java:23488)
  	at android.view.ViewGroup.layout(ViewGroup.java:6575)
  	at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
  	at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
  	at android.view.View.layout(View.java:23488)
  	at android.view.ViewGroup.layout(ViewGroup.java:6575)
  	at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
  	at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
  	at android.view.View.layout(View.java:23488)
  	at android.view.ViewGroup.layout(ViewGroup.java:6575)
  	at androidx.appcompat.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:536)
  	at android.view.View.layout(View.java:23488)
  	at android.view.ViewGroup.layout(ViewGroup.java:6575)
  	at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
  	at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
  	at android.view.View.layout(View.java:23488)
  	at android.view.ViewGroup.layout(ViewGroup.java:6575)
  	at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1841)
  	at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1673)
2023-09-06 21:54:16.666 32509-32509 AndroidRuntime          com.example.devbytes                 E  	at android.widget.LinearLayout.onLayout(LinearLayout.java:1582)
  	at android.view.View.layout(View.java:23488)
  	at android.view.ViewGroup.layout(ViewGroup.java:6575)
  	at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
  	at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
  	at com.android.internal.policy.DecorView.onLayout(DecorView.java:867)
  	at android.view.View.layout(View.java:23488)
  	at android.view.ViewGroup.layout(ViewGroup.java:6575)
  	at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:4119)
  	at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3495)
  	at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2416)
  	at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:9478)
  	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1242)
  	at android.view.Choreographer.doCallbacks(Choreographer.java:996)
  	at android.view.ChoreographerExtImpl.checkScrollOptSceneEnable(ChoreographerExtImpl.java:383)
  	at android.view.Choreographer.doFrame(Choreographer.java:865)
  	at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1227)
  	at android.os.Handler.handleCallback(Handler.java:938)
  	at android.os.Handler.dispatchMessage(Handler.java:99)
  	at android.os.Looper.loopOnce(Looper.java:233)
  	at android.os.Looper.loop(Looper.java:344)
  	at android.app.ActivityThread.main(ActivityThread.java:8249)
  	at java.lang.reflect.Method.invoke(Native Method)
  	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:589)
  	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1071)
  Caused by: java.lang.IllegalArgumentException: The style on this component requires your app theme to be Theme.MaterialComponents (or a descendant).
  	at com.google.android.material.internal.ThemeEnforcement.checkTheme(ThemeEnforcement.java:247)
  	at com.google.android.material.internal.ThemeEnforcement.checkMaterialTheme(ThemeEnforcement.java:216)
  	at com.google.android.material.internal.ThemeEnforcement.checkCompatibleTheme(ThemeEnforcement.java:144)
  	at com.google.android.material.internal.ThemeEnforcement.obtainStyledAttributes(ThemeEnforcement.java:76)
  	at com.google.android.material.card.MaterialCardView.<init>(MaterialCardView.java:170)
  	at com.google.android.material.card.MaterialCardView.<init>(MaterialCardView.java:160)

到了这里,关于Caused by: android.view.InflateException: Binary XML file line的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • LeetCode //C - 199. Binary Tree Right Side View

    Given the root of a binary tree, imagine yourself standing on the right side of it, return the values of the nodes you can see ordered from top to bottom.   Example 1: Input: root = [1,2,3,null,5,null,4] Output: [1,3,4] Example 2: Input: root = [1,null,3] Output: [1,3] Example 3: Input root = [] Output [] Constraints: The number of nodes in the tree is in t

    2024年01月20日
    浏览(38)
  • 解决问题Caused by: java.net.UnknownHostException

    在Java中,\\\"java.net.UnknownHostException\\\" 异常表示无法解析主机名。这意味着你尝试连接的主机名无法解析为 IP 地址。可能的原因有: 主机名错误,请确保输入的主机名正确。 网络连接问题,请检查网络是否连接正常。 DNS 问题,请检查 DNS 服务器是否可以正常解析域名。 如果你

    2024年02月11日
    浏览(51)
  • 使用StreamLold写入 Starrocks报错:Caused by org

    使用StreamLoad写入Starrocks报错,报这个错误:Caused by: org.apache.http.ProtocolException: Content-Length header already present 引入依赖 具体demo 测试类 注意:因为ExtRoaringBitmap是自己封装的,所以需要换成bitmap或者RortingBitmap

    2024年02月11日
    浏览(48)
  • 【redis问题】Caused by: io.netty.channel

    在使用 RedisTemplate 连接 Redis 进行操作的时候,发生了如下报错: 测试代码为: 配置文件:

    2024年02月11日
    浏览(40)
  • caused by: net.sf.jsqlparser.parser.parseexception

    net.sf.jsqlparser.parser.ParseException: Encountered unexpected token 错误通常表示 SQLParser 在解析 SQL 语句时遇到了一个意外的标记。这通常是由以下原因导致的: SQL 语法错误:SQLParser 遵循标准的 SQL 语法规则,如果您的 SQL 语句存在语法错误,例如拼写错误、缺少、不正确的标点符

    2024年02月07日
    浏览(56)
  • Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException

    修改为:    解决办法: BookDao层中添加@Mapper, 告诉springboot这是一个mybatis代理接口类型, 快来扫描我!, 由此生成代理对象 原因三:   测试类ModuleSetApplicationTests和引导程序ModuleSetApplication没有在同名包下, 例如下图, ModuleSetApplication类在com.itheima下ModuleSetApplicationTests没有直接在com

    2024年02月11日
    浏览(50)
  • 报错:Caused by org.springframework.beans.factory.BeanCreationException

    Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘transactionManager’ defined in class path resource [spring/spring-service.xml]: Initialization of bean failed; nested exception is org.springframework.beans.ConversionNotSupportedException: Failed to convert property value of type ‘java.lang.String’ to

    2024年02月13日
    浏览(45)
  • 出现Caused by: java.lang.NullPointerException异常的解决方法

    拿到老师的项目,项目启动时正常,网页提交数据时出现Caused by: 报错, 上一条日志显示 是连接mysql的时候出现bug导致的, 查了一下是数据库版本不匹配问题, 于是我看了一下自己电脑的mysql版本 哇哦,是mysql8.0,再看一下依赖里的mysql版本 是mysql5.1.32,这俩版本不匹配,

    2024年02月11日
    浏览(102)
  • Caused by: java.lang.IllegalStateException: No DataSource set

    如果Nacos连不上数据库,还哪都配置正确,请注意时区 serverTimezone=Asia/Shanghai

    2024年02月11日
    浏览(81)
  • Caused by: org.gradle.workers.internal.DefaultWorkerExecutor$WorkExecutionEx

    集成ARouter报错 在gradle.properties添加 android.useAndroidX=true android.enableJetifier=true

    2024年02月11日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包