Caused by: java.lang.IllegalStateException: RecyclerView has no LayoutManager androidx.recyclerview.

解决java.lang.IllegalArgumentException异常的正确方法(通俗易懂) 本论文将深入探讨java.lang.IllegalArgumentException异常的产生原因、常见情景以及正确解决方法,并提供丰富的代码示例和实践经验,帮助读者更好地理解和处理这一异常。异常处理:在方法内部对可能引发IllegalArgumentException异常的代码块进行try-catch处理,以捕获并处理异常,避免异常的传播和程序的异常终止。非法的方法参数:当调用方法时传入了不合法的参数,例如传入了空值或负数,就可能导致IllegalArgumentException异常的抛出。 阅读详情
Caused by: java.lang.IllegalStateException: RecyclerView has no LayoutManager androidx.recyclerview.widget.RecyclerView
............
        at com.cfsuman.me.batterychargemefast.AdapterRecyclerSystemApps.onCreateViewHolder(AdapterRecyclerSystemApps.java:52)
        at com.cfsuman.me.batterychargemefast.AdapterRecyclerSystemApps.onCreateViewHolder(AdapterRecyclerSystemApps.java:22)

遇到一个这样子的错误,网络上没有查出来原因。于是我分析代码。

public class FragmentSystemApps extends Fragment {
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_system_apps, container, false);
        mRecyclerView = (RecyclerView) view.findViewById(R.id.recycler_view);
        mLayoutManager = new GridLayoutManager(mActivity,1);
        mRecyclerView.setLayoutManager(mLayoutManager);  
        mAdapter = new AdapterRecyclerSystemApps(
                mContext,
                mSystemPackagesList
        );
        mRecyclerView.setAdapter(mAdapter);
        return view;
    }
}     

fragment_system_apps.xml这么写的

<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/coordinator_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    >
    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/recycler_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:scrollbars="vertical"
        >
    </androidx.recyclerview.widget.RecyclerView>
    <TextView
        android:id="@+id/tv_info"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="16dp"
        android:elevation="3dp"
        android:background="#7dffffff"
        android:padding="8dp"
        android:layout_gravity="top|end"
        />
</androidx.coordinatorlayout.widget.CoordinatorLayout>

上面代码没问题,继续看报错的地方

public class AdapterRecyclerSystemApps extends RecyclerView.Adapter<AdapterRecyclerSystemApps.ViewHolder>{
    @Override
    public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType){
        View v = LayoutInflater.from(mContext).inflate(R.layout.custom_view_system_apps,parent,false);
        ViewHolder vh = new ViewHolder(v);
        return vh;
    }

报错就是这行代码

        View v = LayoutInflater.from(mContext).inflate(R.layout.custom_view_system_apps,parent,false);

再看custom_view_system_apps.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.recyclerview.widget.RecyclerView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:id="@+id/card_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    card_view:cardCornerRadius="@dimen/cardCornerRadius"
    card_view:cardElevation="@dimen/cardElevation"
    card_view:cardMaxElevation="@dimen/cardMaxElevation"
    card_view:contentPadding="@dimen/cardContentPadding"
    android:layout_margin="@dimen/cardLayoutMargin">
    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        >
        <ImageView
            android:id="@+id/app_icon"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            style="@style/AppIconStyle"
            />
        <TextView
            android:id="@+id/app_label"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/app_icon"
            android:layout_toEndOf="@id/app_icon"
            style="@style/AppLabelStyle"
            />
        <TextView
            android:id="@+id/app_package"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/app_label"
            android:layout_toRightOf="@id/app_icon"
            android:layout_toEndOf="@id/app_icon"
            style="@style/AppPackageStyle"
            />
        <TextView
            android:id="@+id/app_size"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/app_package"
            android:layout_toRightOf="@id/app_icon"
            android:layout_toEndOf="@id/app_icon"
            style="@style/AppSizeStyle"
            />
    </RelativeLayout>
</androidx.recyclerview.widget.RecyclerView>

后来发现是这custom_view_system_apps.xml这里搞错了,就是说本来要写CardView,但是我搞错了。于是就报上面的错误了。正确代码如下

<?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:id="@+id/card_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    card_view:cardCornerRadius="@dimen/cardCornerRadius"
    card_view:cardElevation="@dimen/cardElevation"
    card_view:cardMaxElevation="@dimen/cardMaxElevation"
    card_view:contentPadding="@dimen/cardContentPadding"
    android:layout_margin="@dimen/cardLayoutMargin">
    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        >
        <ImageView
            android:id="@+id/app_icon"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            style="@style/AppIconStyle"
            />
        <TextView
            android:id="@+id/app_label"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/app_icon"
            android:layout_toEndOf="@id/app_icon"
            style="@style/AppLabelStyle"
            />
        <TextView
            android:id="@+id/app_package"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/app_label"
            android:layout_toRightOf="@id/app_icon"
            android:layout_toEndOf="@id/app_icon"
            style="@style/AppPackageStyle"
            />
        <TextView
            android:id="@+id/app_size"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/app_package"
            android:layout_toRightOf="@id/app_icon"
            android:layout_toEndOf="@id/app_icon"
            style="@style/AppSizeStyle"
            />
    </RelativeLayout>
</androidx.cardview.widget.CardView>
Cisco Packet Tracer 9.0 工业网络模拟:3步配置OT协议与Purdue模型实战 本文详细介绍了如何使用Cisco Packet Tracer 9.0进行工业网络模拟,包括Purdue模型构建、三大OT协议(Modbus TCP/IP、CIP、PROFINET IO)配置及工业网络安全防护。通过实战演练,读者可掌握工业网络设计、配置与安全防护的核心技能,适用于智能制造和能源管理等场景。 阅读详情

相关推荐

程序员实战:DINOv3 权重文件下载与本地化部署全流程指南

Meta开源的DINOv3视觉大模型凭借70亿参数和17亿图像训练,在语义分割、目标检测等任务表现优异。本文详解预训练权重的获取渠道、校验方法和加载实践。开发者可通过HuggingFace或GitHub获取不同版本权重,包括针对服务器端的ViT系列和边缘设备的ConvNeXt系列。文章提供MD5校验代码确保文件完整性,并给出PyTorch和Transformers两种加载方式。特别强调7B模型需16GB GPU内存,建议根据硬件条件选择合适版本,如边缘设备使用ConvNeXt-Tiny。最后指出DINOv3

xiugou3365的博客 5903

java.lang.IllegalStateException: RecyclerView has no LayoutManager

java.lang.IllegalStateException: RecyclerView has no LayoutManager android.support.v7.widget.RecyclerView{332dc79c VFED.... ......I. 0,0-0,0}, adapter:null, layout:null, context:com.iih.mbh.mp.commo...

Sunshine_Cui001的博客 1738

数据结构——滑动窗口

入:下标为 i 的元素进入窗口,更新相关统计量。如果 i < k−1 则重复第一步更新:更新答案。一般是更新最大值 / 最小值出:下标为 i−k+1 的元素离开窗口,更新相关统计量✔1. 定长子串中元音的最大数目✔2. 找到一个数字的 K 美丽值✔4. 子数组的最大平均数 |方法一:前缀和方法二:滑动窗口7. 得到 K 个黑块的最少涂色次数8. 爱生气的书店老板9. 几乎唯一子数组的最大和10. 长度为 K 子数组中的最大和11. 可获得的最大点数12. 最少交换次数来组合所有的1 ||

qq_68915288的博客 762

RecyclerView has no LayoutManager

02-06 13:31:37.788 9714-9714/com.project.xxm.fixbeaty E/AndroidRuntime: FATAL EXCEPTION: main                                                                         Process: com.project.xxm.fixbeaty

yuerliang的专栏 2269

AFSim仿真系统—几何视角下的子系统交互机制解析

本文深入解析了AFSim仿真系统中子系统交互的几何机制。通过剖析世界坐标系、实体坐标系、部件坐标系等七层空间定位体系,阐述了传感器探测、目标指示等交互行为背后的几何原理与限制条件。掌握这套几何视角,是构建高保真、符合物理现实的AFSim仿真模型的关键,能有效避免坐标混乱、交互失效等常见问题。

terraform7cloud的博客 490

ABAP BOM展开避坑指南:CS_BOM_EXPL_MAT_V2函数参数配置详解

本文深入解析了SAP ABAP开发中用于物料清单展开的核心函数CS_BOM_EXPL_MAT_V2。针对其复杂的参数配置,如CAPID、STLAN、DATUV和MEHRS,提供了详细的避坑指南和最佳实践,帮助开发者避免数据错误与性能陷阱,实现高效、准确的BOM多层展开。

pea55的博客 852

RecyclerView使用中遇到的问题

Caused by: Android.view.InflateException: Binary XML file line #8: Error inflating class android.support.v7.widget.RecyclerView在eclipse中使用RecyclerView只能导入API21.0.0中的包才可以使用 java.lang.NullPointerExcept

三杯五岳 711

基于Simulink的输入-输出线性化精确转矩控制

本文详细介绍了基于Simulink的永磁同步电机(PMSM)输入-输出线性化(IOL)精确转矩控制方法。针对传统解耦控制在非线性转矩特性下的局限性,通过建立PMSM非线性状态空间模型,设计IOL控制器将系统转化为线性输入-输出映射。文章包含系统原理推导、Simulink建模步骤、参数整定方法和仿真结果分析,验证了IOL在高动态、宽速域工况下的优越性能(转矩误差降低90%)。最后提出了工程实现要点和扩展应用方向,为开发高精度电机驱动系统提供了实用指导。

xiaoheshang_123的博客 304

android 解决java.lang.IllegalArgumentException: The key must be an application-specific resource id

看提示,很明显了,说不能直接用整数作为key,要使用资源id,这是为了保证此整数的唯一性;这里用到了根据key设置tag,直接用的整数,就如上所述异常;在view中设置tag,有2种方法,好了,又可以愉快玩耍了。

Alex老夫子的专栏 1590

本地搭建 GitLab 14.1.0版本CI/CD

GitLab 镜像版本 gitlab/gitlab-ce:14.1.0-ce.0 GitLab Runner 镜像版本 gitlab/gitlab-runner:v14.1.0 搭建此套环境是在一台32G的windows电脑上安装的。 使用dokcer安装。 此外还涉及的软件Docker Desktop,WSL 安装GitLab 首先启动 dockcer,打开WSL 打开后 首先定义GitLab的持久化目录 export GITLAB_HOME=/srv/gitlab 然后运行安装GitLab的命令

知无涯 4491

【笔试真题】- 华子-2025.12.17-研发岗

难度:中等难度:中等偏难难度:中等K小姐是一名服务器运维工程师,她负责监控公司服务器的访问日志。服务器采用指数退避策略来优化访问频率,每次重试的时间间隔会按照某种规律增长。经过一段时间的监控,K小姐记录了 nnn 个访问时间点,第 iii 个时间点的值为 a[i]a[i]a[i](可能有重复)。现在,她想分析这些访问时间点是否符合某种特定的模式。具体来说,对于给定的参数对 (x,y)(x, y)(x,y),她想知道:有多少个访问时间点 a[i]a[i]a[i] 满足 a[i]=xK+ya[i] = x^K

春秋招笔试突围 185

java.lang.IllegalArgumentException: other than LinearLayoutManger is not supported

在安卓不断更新换代的潮流中,Recyclerview也不断优化,multiSnapRecyclerView分屏功能 应运而生了,但是哩事不与人愿,报了一个标题错误,在自己百般寻找方法和途径中解决了这个问题,下面是完整错误 java.lang.IllegalArgumentException: other than LinearLayoutManger is not supported

552

14、深入解析Sigma - Delta调制算法:从原理到应用

本博客深入解析了Sigma-Delta调制(SDM)算法的原理与应用,特别是在Super Audio CD(SA-CD)音频编码中的作用。文章探讨了传统SDM的局限性,并介绍了一系列改进型前瞻式SDM技术,如Trellis Sigma-Delta调制、高效网格Sigma-Delta调制和修剪树Sigma-Delta调制。这些技术通过降低计算复杂度和提升信号转换质量,在音频处理和无损数据压缩领域展现出巨大潜力。此外,博客还对不同SDM技术进行了性能比较,并分析了如何实现最大信噪比(SNR),为未来音频技术和数

tgb34567890的博客 421

Android RecyclerView使用及出现问题汇总(附代码)

RecRecyclerViyclerVie基本使用及使用过程中出现问题(附代码)

安卓开发工程师 4132

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

java.lang.IllegalArgumentException: itemView may not be null

RecyclerView : java.lang.IllegalArgumentException: itemView may not be null

my de 微博 964

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

RecycleView-Java.lang.IllegalArgumentException: Called attach on a child which is not detached

http://www.geekqian.com/post/8d9ebc79.html 参考: https://blog.csdn.net/bunny1024/article/details/53670306 使用 RecycleView 的 notifyItemChanged() 时报的这个错误. 原因就是用的 XRecycleView 控件自带了一个下拉刷新头, 所以当我调用刷新第 ...

geekqian的博客 2042

亲测有效,已解决java.lang.IllegalStateException异常的正确解决方法,嘿嘿嘿

出现 IllegalStateException 的原因可能有很多,但通常涉及以下几种情况: 对象状态不正确:例如,你可能尝试在一个没有初始化的对象上调用方法。 线程安全问题:多线程环境下,如果没有正确的同步,对象的状态可能会被破坏。 生命周期问题:在对象的生命周期中的某个不合适的时刻执行了某个操作。

PythonAigc的博客 1万+

Android学习笔记(Android Studio)2-11-1~2-11-4(RecyclerView,含新版本通过 androidx导包,列表视图、水平滚动、网格布局、瀑布流)

Android学习笔记2-11-1~2-11-4 推荐新手向学习视频:B站https://www.bilibili.com/video/av38409964点我传送 2-11-1 RecyclerView(一) RecyclerVie能够灵活实现大数据集的展示,视图和复用管理比ListView更好,能够显示列表、网格、瀑布流等形式,且不同的ViewHolder能够实现item多元化功能。 ...

影龙武的博客qq_43594119 1570

Android RecyclerView最基本的使用你学会了吗

在开发项目时,要想自己的项目布局好看点避免不了要使用RecylerView(比ListView要高级应该都知道吧,至于区别不知道的自行百度) 在使用了好多次RecylerView后你脑海中就会浮现出一个使用RecylerView的框架,就好像数学公式一样,废话不多说,直接上代码,代码很简单,基本都写了注释 首先让我们一起看看一个无任何内容的RecylerView该怎么写吧 使用RecylerView需要导依赖包 implementation 'androidx.recyclerview:recyc

qq_45682662的博客 2599

RecylerView布局管理器LayoutManager(详解)

设置布局管理器方法,实现RecylerView布局里面的内容显示方式; recyclerView.setLayoutManager(LayoutManager layoutManager) 使用三个类 LinearLayoutManager:线性布局管理器 StaggeredGridLayoutManager: 错列网格布局管理器 GridLayoutManager:网格布局管理器 一、LayoutMananger子类LinearLayoutManager 一般使用LinearLayou

indeedes的博客 7349

android java.lang.illegalstateexception,Android异常 java.lang.IllegalStateException解决方法

Android异常详情介绍这种异常我遇到以下两种情况:1. java.lang.IllegalStateException: No wrapped connection.2.java.lang.IllegalStateException: Adapter is detached.原因:1.单线程一次执行一个请求可以正常执行,如果使用多线程,同时执行多个请求时就会出现连接超时.2.HttpConne...

weixin_29920889的博客 2817

解决安卓悬浮窗异常:java.lang.IllegalArgumentException

在开发安卓悬浮窗的过程中有可能会遇到这个异常:java.lang.IllegalArgumentException: View not attached to window manager。 原因:如果是在执行android.view.ViewManager.updateViewLayout(View view, LayoutParams params)这个方法时出错,表示在调用该方法前,该

gaojing694855420的博客 6755

解决java.lang.IllegalArgumentException异常的正确解决方法

java.lang.IllegalArgumentException 是 Java 编程语言中的一个运行时异常,通常表示向方法传递了一个不合法或不适当的参数。当程序在运行时遇到此类异常,它会立即中断当前的执行流程,并抛出异常信息。理解这个异常的原因并学会如何正确解决,对于编写健壮的 Java 程序至关重要。

2301_79779756的博客 2万+

亲测有效!!!已解决java.lang.IllegalArgumentException异常,已解决java.lang.IllegalArgumentException异常的正确解决方法,亲测有效!!

java.lang.IllegalArgumentException 是 Java 中的一个运行时异常,它表示向方法传递了一个不合法或不适当的参数。这个异常通常用于表示调用者违反了API合约,即方法调用者传递了一个方法签名预期之外的值。 问题分析 当 Java 程序抛出 IllegalArgumentException 时,意味着程序中的某个方法收到了一个不符合其要求或期望的参数。这可能是由于参数的类型错误、值范围错误、格式错误或任何其他不满足方法使用条件的情况。 报错原因 IllegalArgumen

PythonAigc的博客 1万+

已解决:java.lang.IllegalStateException 异常的正确解决方法,亲测有效!!!

是Java中常见的异常,通常由程序在不合法的状态下调用方法或执行操作引起。通过合理控制方法调用时机、正确管理资源、避免在非法状态下操作集合或资源,并加强多线程操作中的同步控制,可以有效避免此类异常的发生。本文提供了多种解决方案和预防措施,帮助开发者快速定位并解决异常。希望本文对您有所帮助,如有其他问题,欢迎讨论!

猿鹏探码的博客 7706

Android java.lang.IllegalArgumentException原因及解决

一、问题现象 今天在检测bugly异常日志的时候发现了这个异常 java.lang.IllegalArgumentException 掐指一算,这个是参数错误,查看到具体的代码时发现有一个参数要求是int类型,结果传了Integer 而且代码被try catch了。所以没有及时发现。 二、问题解决 原因已给、对症下药。Integer改为int 总是遇到这个异常不要慌、不要忙、慢慢查找莫悲伤。加油打工人。 光看不赞,纯属扯淡! ......

FrancisBingo的博客 2万+
上一篇: windows实用脚本记录
下一篇: firebase到底怎么用android
SeekSage
SeekSage 领域专家: 操作系统技术领域 领域专家: 操作系统技术领域
博客等级 码龄13年 364粉丝 286原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值