Android 高级控件二

本文深入探讨了ListView的使用与优化策略,包括ScrollView、ListView的基本概念,自定义适配器(BaseAdapter)的实现方法,如getCount、getView等关键函数的解析,以及ListView的性能优化技巧,如ConvertView的复用、ViewHolder模式的应用和PullToRefresh的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、ScrollView
二、ListView
三、自定义适配器

BaseAdapter:是所有适配器类的父类,可以对列表项进行最大限度的定制
自定义适配器中的方法:
getCount : 共有几条数据
getView : 这个方法的作用是把每一行的视图文件解析成一个View对象
getItem : 解析第几条数据
getItemId : 获取第几条数据的下标

LayoutInflater(布局解析器)
–LayoutInflater有三种获得方式,资料中有详细介绍
用来把layout布局文件解析成一个View对象,不可以new,需要使用系统服务获得
inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);

四、ListView的优化

1、使用ConvertView重用组件
即拖动时被遮住、看不见的控件,重用它,而非每次创建一个新的对象
2、 使用内部类ViewHolder+ConvertView.setTag()保存控件,而不用每次查找
ViewHolder(视图的持有者)
3、使用分页查询(PullToRefresh)
使用AsyncTask(异步任务)加载数据,最少要重写以下这两个方法
doInBackground
后台执行
onPostExecute
在doInBackground方法执行结束之后在运行,并且运行在UI线程当中 可以对UI空间进行设置
关键代码:
myListViewAdapter.notifyDataSetChanged();// 通知适配器数据已改变
ptrlv_main_1.onRefreshComplete();// 通知控件数据已经加载完毕


如下图所示:

这里写图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值