listview多种条目展示案例

2023-12-30 00:18

本文主要是介绍listview多种条目展示案例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

	public class myAdapter extends BaseAdapter {//	获得当前条目类型public int getItemViewType(int position) {// 如果是标题,返回0if (position == 0 || position == userAppList.size() + 1) {return 0;} else {// 如果是应用条目,返回1return 1;}}//获得条目种类个数@Overridepublic int getViewTypeCount() {return super.getViewTypeCount() + 1;}@Override//所有条目总数public int getCount() {return systemAppList.size() + userAppList.size() + 2;}/** 返回当前条目*/public AppInfo getItem(int position) {if (position == 0 || position == userAppList.size() + 1) {return null;} else if (position < userAppList.size() + 1) {return userAppList.get(position - 1);} else {return systemAppList.get(position - 2 - userAppList.size());}}@Overridepublic long getItemId(int position) {return position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {int type = getItemViewType(position);// 如果是纯文本if (type == 0) {ViewTitleHolder vth = null;if (convertView == null) {convertView = View.inflate(getApplicationContext(),R.layout.item_appinfo_title, null);vth = new ViewTitleHolder();vth.title = (TextView) convertView.findViewById(R.id.tv_appinfo_title);convertView.setTag(vth);} else {vth = (ViewTitleHolder) convertView.getTag();}if (position == 0) {vth.title.setText("用户应用(" + userAppList.size() + ")");} else {vth.title.setText("系统应用(" + systemAppList.size() + ")");}return convertView;} else {// 如果是应用介绍ViewHolder vh = null;if (convertView == null) {convertView = View.inflate(getApplicationContext(),R.layout.item_appinfo, null);vh = new ViewHolder();vh.icon = (ImageView) convertView.findViewById(R.id.iv_appIcon);vh.appName = (TextView) convertView.findViewById(R.id.tv_appName);vh.appIsSdcard = (TextView) convertView.findViewById(R.id.tv_appIsSdcard);convertView.setTag(vh);} else {vh = (ViewHolder) convertView.getTag();}AppInfo item = getItem(position);vh.icon.setImageDrawable(item.icon);vh.appName.setText(item.name);if (item.isSdcard) {vh.appIsSdcard.setText("内存储卡");} else {vh.appIsSdcard.setText("SdCard应用");}return convertView;}}}

	private ArrayList<AppInfo> systemAppList; //系统应用信息集合private ArrayList<AppInfo> userAppList; //用户应用信息集合

这篇关于listview多种条目展示案例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/551148

相关文章

Linux中查看操作系统及其版本信息的多种方法

《Linux中查看操作系统及其版本信息的多种方法》在服务器运维或者部署系统中,经常需要确认服务器的系统版本、cpu信息等,在Linux系统中,有多种方法可以查看操作系统及其版本信息,以下是一些常用的方... 目录1. lsb_pythonrelease 命令2. /etc/os-release 文件3. h

Java中实现对象的拷贝案例讲解

《Java中实现对象的拷贝案例讲解》Java对象拷贝分为浅拷贝(复制值及引用地址)和深拷贝(递归复制所有引用对象),常用方法包括Object.clone()、序列化及JSON转换,需处理循环引用问题,... 目录对象的拷贝简介浅拷贝和深拷贝浅拷贝深拷贝深拷贝和循环引用总结对象的拷贝简介对象的拷贝,把一个

Spring Boot中获取IOC容器的多种方式

《SpringBoot中获取IOC容器的多种方式》本文主要介绍了SpringBoot中获取IOC容器的多种方式,包括直接注入、实现ApplicationContextAware接口、通过Spring... 目录1. 直接注入ApplicationContext2. 实现ApplicationContextA

Java中最全最基础的IO流概述和简介案例分析

《Java中最全最基础的IO流概述和简介案例分析》JavaIO流用于程序与外部设备的数据交互,分为字节流(InputStream/OutputStream)和字符流(Reader/Writer),处理... 目录IO流简介IO是什么应用场景IO流的分类流的超类类型字节文件流应用简介核心API文件输出流应用文

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

深度解析Java @Serial 注解及常见错误案例

《深度解析Java@Serial注解及常见错误案例》Java14引入@Serial注解,用于编译时校验序列化成员,替代传统方式解决运行时错误,适用于Serializable类的方法/字段,需注意签... 目录Java @Serial 注解深度解析1. 注解本质2. 核心作用(1) 主要用途(2) 适用位置3

Java 正则表达式的使用实战案例

《Java正则表达式的使用实战案例》本文详细介绍了Java正则表达式的使用方法,涵盖语法细节、核心类方法、高级特性及实战案例,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、正则表达式语法详解1. 基础字符匹配2. 字符类([]定义)3. 量词(控制匹配次数)4. 边

Python Counter 函数使用案例

《PythonCounter函数使用案例》Counter是collections模块中的一个类,专门用于对可迭代对象中的元素进行计数,接下来通过本文给大家介绍PythonCounter函数使用案例... 目录一、Counter函数概述二、基本使用案例(一)列表元素计数(二)字符串字符计数(三)元组计数三、C

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十