位置: 编程技术 - 正文

android-ListView(1)-listview概览

编辑:rootadmin

推荐整理分享android-ListView(1)-listview概览,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

我们在写android程序时,几乎每个app都用到ListView这种控件并且很大一部分精力都用在处理它上面,我先大致说一下ListView的构成及其功能,这部分也许会很枯燥,但是对于深入理解ListView确实很有帮助。ListView顾名思义就是形式为list的view,这里为什么说这句废话那?先卖个关子,后面优化的时候就可以体会到。它在android.widget 包里面,是public class,属于控件的一种,就和Button,Spinner等一样。listview的继承属性为

->android.widget.ListView(public class) ->android.widget.AbsListView(public abstract class) ->android.widget.AdapterView《android.widget.ListAdapter》(public abstract class) ->android.view.ViewGroup(public abstract class) ->android.view.View(public class) ->java.lang.Object(public class)

我们自下而上梳理一下,从继承关系我们可以清楚的知道,ListView本质是view,而且是ViewGroup,就是一组view,其实list列表的每一条item都是一个view。然后又出来个AdapterView,而且是泛型,它的标准形式android.widget.AdapterView《T extends android.widget.Adapter》,这里表示一个实现了android.widget.Adapter接口的T类型,这里就一下有意思了,为什么要实现Adapter这个接口,对于Adapter,android官方文档是这样说的,

android-ListView(1)-listview概览

An Adapter object acts as a bridge between an AdapterView and the underlying data for that view. The Adapter provides access to the data items. The Adapter is also responsible for making a View for each item in the data set.

我大致翻译一下就是,适配器对象是适配器视图和潜藏在视图里面的数据的桥梁,适配器给数据条目提供了一个通道,同时适配器也为数据集里面的每一个条目形成一个视图。也就是我包含很多条目的数据集要存在这个Adapter里面,同时Adapter为每个条目返回一个视图,其实ListView里面每个item的视图就是Adapter返回的。这种API设计其实是遵循MVC模式的,V即view,就是我们这里的ListView,C即controller,就是Adapter,而M就是model,数据模型,即android中数据源。这种设计模式使界面显示和数据源以及控制这些数据怎么显示到界面上的方式这三者完全分离,更易控制,比如我们可以在数据源和ListView不变的情况下,更换适配器,这样就能得到不同的布局;我们也可以让视图及适配器不变,更换数据源,比如可能是本地SQLite数据,也可能是自定义数据列表,或者联网请求来的数据。都可以改变其中一个而其他不变,这样写代码效率高很高。

我们的ListView很大一部分都是和数据和适配器打交道,在android里数据有Cursor和ArrayList等,视图有ListView和Spinner,适配器有以下如图几个:

我们在接下来的博客中将细致讲述怎样把三者连接起来,针对不同的ListView的显示需求和不同的数据源怎么选用不同的适配器Adapter。并且还会介绍一些有关网络和ListView数据更新的问题。

Android 重写Seekbar 我们将会重写SeekBar,改变没有前进的地方和已经前进的地方使用Drawable文件使用LayerDrawable对象,他在xml中的根元素是layer-listprename=codeclass=html?xmlversion=1.

android之handler android中handler的基本使用方法以及运行原理。最近看mars的android重置版第二季的视频关于handler的讲解,让我对于这个以前知道怎么用,却不是很明白原理

使用lint工具优化Android代码 一、概述Androidlint工具是一个静态的代码分析工具,用来检查代码中潜在的问题并且提高代码的正确性,安全性,可用性,国际化和性能。确保代码中没

标签: android-ListView(1)-listview概览

本文链接地址:https://www.jiuchutong.com/biancheng/379698.html 转载请保留说明!

上一篇:AppWidgetProvider使用介绍

下一篇:Android 重写Seekbar(android重写方法)

  • 投资收益纳税调整明细表怎么填
  • 本年利润期末有无余额
  • 企业购入固定资产在每期末应使用公允价值法进行计量
  • 公司清理固定资产汽车怎么开票
  • 小金额收据入账后需要汇算清缴吗
  • 企业所得税资产总额怎么填写
  • 新税法讲课费如何代缴个税
  • 专用增值税发票和普通发票区别
  • 税金及附加包括个人所得税吗
  • 企业所得税税收优惠政策
  • 社保费工商退费金额如何做会计分录呢?
  • 可以先报税后结账吗
  • 公户转私户的钱几天能到账
  • 公路工程营改增
  • 事业单位只能开具0税率的普票
  • 跨行发报
  • 是不是所有的进口药都不能报销
  • 试运营和正式运营间隔
  • 解析居民企业非货币性资产对外投资政策
  • 上级工会返还的会计分录
  • 活动策划费属于哪一类
  • 挂靠公司代收入税金如何做分录?
  • 财产保险费计入什么科目
  • 附加税零申报怎么申报
  • 盈余积累转增资本的条件
  • 外管证预缴增值税怎么抵扣
  • macos mojace
  • 所得税汇算清缴时间期限
  • PHP:xml_set_element_handler()的用法_XML解析器函数
  • 无形资产摊销的会计科目怎么录
  • 进项发票没认证可以开红字申请单吗
  • php注册功能的实现
  • 税款滞纳金会计处理
  • ai作画app
  • 网络请求失败什么意思
  • 法人给对公账户转账
  • 城建税退回怎么做分录
  • python爬虫详细教程
  • 织梦如何使用
  • 接受捐赠的固定资产怎么计提折旧
  • 登记注册车辆登记英语
  • 商品试用是否还要回收
  • 分公司开票总公司收款怎么做账
  • 预收账款可以用什么科目核算
  • 企业贷款的条件和流程
  • 所得税季初季末怎么填
  • 企业付的房租税费会计分录
  • 代扣代缴个人所得税账务处理
  • 以个人名义汇货要交税吗
  • 研发费用按50%的预算
  • 企业接收到政府信息
  • 企业哪些税费不通过应交税费账户进行核算
  • 商品验收入库时怎么做账
  • 个人账户打流水需要本人吗
  • 物业管理费发票税率
  • 金税盘系统可以添加2个账号?
  • 五险一金的正确说法
  • 从业人数和资产总额指标,应按企业
  • 商业企业进货会计分录
  • 自动清理河道垃圾船
  • 逼死win8的节奏 Win7升级至Win9仅需30美元 自动升级不需要重新安装
  • windows七如何连接网络
  • windows xp自带
  • win8系统桌面图标怎么变小
  • macbook外接多个显示器
  • 安装win8.1一直卡着不动
  • win7 虚拟磁盘
  • opengl mfc
  • 多媒体播放器使用方法
  • unity flybird
  • 拥有一个属于自己的空间高中作文
  • 安卓开发者有多少
  • java中的锁机制
  • shell循环遍历目录
  • 浅谈幼儿良好行为的培养论文
  • bootstraprow布局
  • jquery的动画效果
  • 各地市的税务局有哪些
  • 南京税务举报
  • 福建省网上税务办事大厅
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设