ExpandableListView的使用,可展开的ListView

ExpandableListView,可展开和折叠的ListView ExpandableListView界面实现效果: 一、XML代码 1.1 activity_expandable_list_view.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools 阅读详情
先看下效果
ExpandableListView 和LiseView类似,继承自extends ListView,布局:
<ExpandableListView
        android:id="@+id/elv"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>
也需要Adapter,但是ExpandableListView 的Adapter为BaseExpandableListAdapter:
public class MyExpandAdapter extends BaseExpandableListAdapter {
    
    private Context mContext;

    public MyExpandAdapter(Context context) {
        this.mContext = context;
    }

    // 获取组的数量
    @Override
    public int getGroupCount() {
        return 10;
    }

    // 获取某一组的子条目数量
    @Override
    public int getChildrenCount(int groupPosition) {
        return 3;
    }

    // 获取组对应的对象
    @Override
    public Objects getGroup(int groupPosition) {
        return null;
    }

    // 获取某一组的某个子条目对应的对象
    @Override
    public Object getChild(int groupPosition, int childPosition) {
        return null;
    }

    // 获取组的View
    @Override
    public View getGroupView(int groupPosition, boolean isExpanded, View convertView,
            ViewGroup parent) {
        if(convertView == null) {
            convertView = new TextView(mContext);
        }
        TextView tv = (TextView) convertView;
        tv.setText("第"+groupPosition);
        return convertView;
    }

    // 获取某一组的某个子条目的View
    @Override
    public View getChildView(int groupPosition, int childPosition, boolean isLastChild,
            View convertView, ViewGroup parent) {
        if(convertView == null) {
            convertView = new TextView(mContext);
        }
        TextView tv = (TextView) convertView;
        tv.setText("第"+groupPosition+"第"+childPosition);
        return convertView;
    }

    // 某一组的某个子条目是否可点击
    @Override
    public boolean isChildSelectable(int groupPosition, int childPosition) {
        return true;
    }

    // -----
    // 获取组的id
    @Override
    public long getGroupId(int groupPosition) {
        return 0;
    }

    // 获取某一组的某个子条目的id
    @Override
    public long getChildId(int groupPosition, int childPosition) {
        return 0;
    }

    // 当数据发生变化时, id是否不变
    @Override
    public boolean hasStableIds() {
        return false;
    }

}
最后设置Adapter
mElv = (ExpandableListView) findViewById(R.id.elv);
        mElv.setAdapter(new MyExpandAdapter(this));




android listview 多级目录 类似嵌套可展开的listview效果 android listview 多级目录 类似嵌套可展开的listview效果。首先是一个listview 列表。 每一个列表项里,点击展开按钮。该列表项就多出一个目录。再点击展开二级目录按钮,就显示二级目录。 立即下载

相关推荐

GNSS接收机性能测试全攻略:从实验室到真实场景

本文系统介绍了GNSS接收机从实验室到真实场景的完整性能测试流程。首先通过GNSS模拟器进行射频传导测试,评估接收机的基础性能;其次进行天线OTA测试,考察整机系统表现;最后通过精心设计的外场路测,在复杂环境中验证其实际定位精度与可靠性。文章强调,只有结合可控的实验室验证与多变的外场挑战,才能对接收机性能做出全面、真实的评价。

weixin_28365523的博客 516

ExpandableListView(listView嵌套)

可以做出一个类似QQ分组的界面(点开分组,里面有人) 在mainactivity中连接到界面,findById找到ExpandableListView,初始化数据,这个初始化是两个List的嵌套,把Student数据放到List students中,把Clazz数据放在List mClazz中,然后把students套进mClazz中(每个班级都有好多学生,每个mClazz中都有一个studen

A little progress a day 900

SuperPoint与SuperGlue的C++ TensorRT工程化实战:从理论到部署的完整指南

本文详细介绍了如何将SuperPoint和SuperGlue算法通过C++和TensorRT进行工程化部署,从模型准备、格式转换到TensorRT引擎构建和C++推理实现。通过性能优化技巧和实际应用案例,展示了在边缘设备上实现实时特征匹配的完整流程,显著提升处理速度与效率。

weixin_42537831的博客 160

使用ExpandableListView实现ListView嵌套ListView

今天写界面发现是个ListView的嵌套 对我这个新手而言,只能发动网友的力量在网上找demo了,奈何没有找到。。。。(可能我搜索关键词不准确)还浪费了我的积分!后来突然想起之前有用ExpandableListView写过分组列表,让它默认展开并且不能收缩不就实现了我想要的效果了吗?哈哈哈,机智如我:) 关键代码: @ViewInject(value = R.id.elv_conf

Heatherhh的博客 1785

深度学习驱动材料科学:晶体生成与性质预测技术综述

深度学习作为人工智能的核心技术,通过模拟人脑神经网络处理复杂数据,在多个领域展现出强大的模式识别与生成能力。其原理在于构建多层非线性变换,从海量数据中自动学习特征表示与映射关系。这一技术价值在于能够高效处理高维、非结构化数据,解决传统方法计算成本高、探索空间有限的问题。在工程实践中,深度学习已广泛应用于计算机视觉、自然语言处理等领域,并正深刻变革材料科学的研究范式。具体到材料领域,它通过学习已知材料的构效关系,实现对新材料性能的快速预测与逆向设计。应用场景包括但不限于新能源材料、半导体、催化剂等领域的高通量

weixin_28695161的博客 414

【军标】《军用软件计价规范(试行)》和GJB 10162-2021《军用软件计价功能项识别方法》-费用标准解读系列37

2021年2月1日实施的《军用软件计价规范(试行)》(替代了2019年版本)以及2021年3月1日实施的《军用软件计价功能项识别方法》(GJB 10162-2021),是我们平时在军用软件造价咨询中进行软件规模度量、计价和审价的主要依据。《军用软件计价规范(试行)》(4号文)的附件1为《军用软件功能规模度量方法》,即4号文本身包含对软件规模测试的方法(功能点方法主要参考NESMA等国际标准)、规模度量过程、功能点计数和计算规则等相关说明。(四)软件研发费用=软件研发工作量x软件研发人月综合费率。

xiaosenyouli的博客 6120

29. 【Android教程】折叠列表 ExpandableListView

本节学习一个可折叠的 ListView,可以用在一些需要分类的场景下。通过 ExpandableListView 我们可以首先在 ListView 上展示大的分类,当点击某个类别的时候再将 ListView 做一个展开,展示该类下的所有子类供用户选择。它与 ListView 的不同主要是 ExpandableListView 提供了两级列表,可以方便的做伸展和收缩。

这是一个web全栈开发的博客,取其精华去其糟粕,争取让大家一看就懂,一学就会,一用就成~ 3129

详解机器人标定

这里是机器人在取料之前,先把自己的角度补正到与 物料当前角度一致,到(X’,Y’)位置处,然后移动 CDx,Cdy,与物料位置也重合,然后去取料。可以使用实物标定,机器人抓住工件摆放9个位置,得到9个机械坐标,相机也得到9个像素坐标,(机器人每次需要回到固定位置拍照),然后标定。(X0,Y0)为旋转中心, (X1,Y1)及(X2,Y2)为工件在视野中旋转角度a的前后坐标,(Xt,Yt)为两点连线的延长。(rx0, ry0)为旋转中心,( x, y)为被旋转的点,(x0,y0)旋转后的点。

weixin_56819992的博客 7630

【Android UI设计】ExpandableListView详解

一、前言今天我们来实现一下如下这个效果,类似于QQ好友分组的UI效果,废话不多说,先上效果图: ExpandableListView是一个用来显示二级节点的listview。默认展示的是第一级的分组,点击某个分组后会展开该分组下的子列表。

风吹起如花般细碎流年 2万+

ONNX Runtime C# YOLO全链路压测:从300ms到22ms的15个底层优化技巧

摘要:本文分享了工业质检场景下C#调用YOLOv8s ONNX模型的性能优化实战经验。原始单帧推理耗时300ms无法满足产线需求,通过全链路分析定位瓶颈(预处理85ms、推理180ms、后处理30ms)。重点优化措施包括:使用OpenCVSharp CUDA加速预处理(85ms→12ms),开启ONNX Runtime ALL级别图优化,选用TensorRT执行提供程序(180ms→22ms),以及优化内存管理和线程调度。最终实现单帧总耗时22ms±2ms,GPU利用率提升至85%,完整满足产线120块板/

2601_94871597的博客 402

Codex 接入国产大模型指南:客户端与 CLI 双端实战

CC Switch是目前最流行的 Codex / Claude Code 模型切换工具,内置了协议转换功能,支持几乎所有主流国产模型。核心原理Codex → 本地 8317 端口(CC Switch)→ 协议转换 → 国产模型 API整个过程对 Codex 完全透明,Codex 以为自己在跟标准的 Responses API 对话。用户类型推荐方案理由新手 / 不想折腾配置简单,免费额度够用追求稳定体验通义千问(原生接入)官方兼容,功能最完整企业用户自建 AI 网关可控性强,支持多用户管理预算有限。

篮球界最会写bug的人;程序猿中打球最菜的人。 575

Android开发-ExpandableListView控件

目录 1.ExpandableListView概述 1.1 定义 1.2 与ListView的区别 1.3 应用场景 2.常用属性 2.1 groupIndicator 2.2 childIndicator 2.3 childDivider 3.常用的方法 3.1 setAdapter(ExpandableListAdapter adapter) 3.2 setOnGroup...

云上道人的博客 1816

水与光的奇妙“切割之舞”:水导激光切割技术探秘

水导激光切割技术的诞生,是材料加工领域不断追求高精度、高质量加工的成果。传统激光切割技术在加工过程中,材料会因瞬间高温而产生热变形、热影响区大以及切割面粗糙等问题,这些弊端在对一些高精度、热敏性材料的加工中尤为突出 ,迫切需要一种新的技术来克服这些难题。水导激光切割技术的起源可以追溯到 20 世纪 80 年代。1986 年,德国公司 Aesculap-Werke AG 首次提出了将水流引入激光切割过程的创新想法,并制造出首代水导激光设备。不过,当时的技术尚处于雏形阶段,仅仅是在光纤出口添加了一小柱水流,激光

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 1673

ExpandableListView实现可展开的ListView

最近朋友公司的一个项目中用到了一ListView的Item嵌套ListView的功能,朋友向我求助这种效果该怎么实现。ListView嵌套ListView的情况在实际开发中用到的还是比较多的。谷歌也给了我们一个这样的控件叫ExpandableListView,它可以实现item的展开效果。ExpandableListView除了比ListView多了几个方法外用法几乎和ListView用法一样,只要...

smily的博客 5377

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

ExpandableLIstView,可展开的ListView

可以实现像qq好友分类一样的效果 首先当然是需要在主界面的布局里面放一个ExpandableListView,因为我放东西喜欢在可视化界面里直接拖进去然后再去xml里面修改,这里我发现可视化界面里找不到这个组件,没办法只能手写,而且ExpandableListView好像只能放在线性布局里面,需要手动把初始的约束布局改成线性 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://...

qq_42890648的博客 1436

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Android高级控件之ExpandableListView可以展开的listview

在实际的应用中我们可能会需要可以展开的listview  下面就介绍一下这个方法的使用 main.xml <ExpandableListView android:id="@+id/expandableListView1" android:layout_width="match_parent" android:layout_height="wra

larry 427

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

android ExpandableListView可以展开的ListView

第一步: 建立Xml文件:

打字打不快的屌丝 1240

ScrollView嵌套ListView时Bug解决以及ExpandableListView设置全部展开

ExpandableListView设置全部展开以及ScrollView嵌套ListView时Bug解决

xhuww的博客 1686

Android ExpandableListView 可展开的ListView

public class TestExpandableListView extends Activity { ExpandableListView mView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVie

打渔还是晒网 —— stone 1万+

Android开发之ExpandableListView: 可展开的ListView

ListView 对于Android开发者来说是再熟悉不过的了,不过ListView的功能也有限。当需要展示第二层级数据时,使用ExpandableListView会更方便。

Double_HH 731

ExpandableListView(似listview中的item可展开)可展开的列表组件

ExpandableListView是ListView的子类,它在普通的ListVIew的基础上进行了扩展,它把应用中的列表项分为几组,每组又可包含多个列表项。 ExpandableListView的用法与普通的LIstVIew相似,只是ExpandableListView所显示的列表项应该由ExpandableAdapter提供 ExpandableAdapter额外支持的xml属性

mengshirui_的博客 1594

可点击展开的ListView--ExpandableListView

ExpandableListView 基本使用,个人案列

jiahuan 984

Listview列表收缩与展开——ExpandableListView

ExpandableListView是一个垂直滚动显示两级列表项的视图,与ListView不同的是,它可以有两层:每一层都能够被独立的展开并显示其子项。 好友QQ列表,可以展开,可以收起,在android中,以往用的比较多的是listview,虽然可以实现列表的展示,但在某些情况下,我们还是希望用到可以分组并实现收缩的列表,那就要用到android的ExpandableLis

jenniferyayun的博客 3531

详解android 可展开(收缩)的列表ListView(ExpandableListView)

重要方法       expandGroup(int groupPos) :在分组列表视图中展开一组,       setSelectedGroup(int groupPosition) :设置选择指定的组。       setSelectedChild(int groupPosition, int childPosition, boolean shouldExpandGroup) :设置选择指定...

tt07406的博客 846

可展开(收缩)的列表ListView(ExpandableListView)

<br />1、首先创建我们的Activity,继承 android.app.ExpandableListActivity,直接看代码吧。<br />package com.ideasandroid.sample; import android.app.ExpandableListActivity; import android.os.Bundle; import com.ideasandroid.sample.adapter.IdeasExpandableListAdapter;

JavaTiger 4019

android 可展开(收缩)的列表ListView(ExpandableListView)

每天都在用QQ聊天,今天突然一想,android怎么实现列表的分组展开呢?看了看api,发现其实现过程也很简单。先看一下最终效果吧! 1、首先创建我们的Activity,继承 android.app.ExpandableListActivity,直接看代码吧。 package com.ideasandroid.sample; import android.app.Ex...

angchanghui2104的博客 682
上一篇: 点击空白区域隐藏软键盘输入法
下一篇: PopupWindow的基本使用
jiangtea
博客等级 码龄10年 33粉丝 115原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值