欢迎来到天天文库
浏览记录
ID:18428678
大小:103.00 KB
页数:17页
时间:2018-09-17
《android listview详解 - android diordna - 博客园》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、androidListView详解 在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示。抽空把对ListView的使用做了整理,并写了个小例子,如下图。 列表的显示需要三个元素:1.ListVeiw用来展示列表的View。2.适配器 用来把数据映射到ListView上的中介。3.数据 具体的将被映射的字符串,图片,或者基本组件。根据列表的适配器类型,列表分为三种,ArrayAdapter,SimpleAdapter和SimpleCursorA
2、dapter其中以ArrayAdapter最为简单,只能展示一行字。SimpleAdapter有最好的扩充性,可以自定义出各种效果。SimpleCursorAdapter可以认为是SimpleAdapter对数据库的简单结合,可以方面的把数据库的内容以列表的形式展示出来。 我们从最简单的ListView开始: viewsource01/**02*@authorallinyearsmortgagehousing;4.mortgageregistrationformalitiesarecompleted.(D)pled
3、ge1.borrower(includingthepledgor)between18-65yearsofage,withfullcivilcapacity;2.collateral03*04*/05publicclassMyListViewextendsActivity{0607privateListViewlistView;//privateListdata=newArrayList();@OverridepublicvoidonCreate(BundlesavedInstanceS
4、tate){super.onCreate(savedInstanceState);listView=newListView(this);listView.setAdapter(newArrayAdapter(this,android.R.layout.simple_expandable_list_item_1,getData()));setContentView(listView);}privateListgetData(){Listdata=newArrayList<
5、String>();data.add("测试数据1");data.add("测试数据2");data.add("测试数据3");data.add("测试数据4");returndata;}} 上面代码使用了ArrayAdapter(Context context,inttextViewResourceId, Listobjects)来装配数据,要装配这些数据就需要一个连接ListView视图对象和数组数据的适配器来两者的适配工作,ArrayAdapter的构造需要三个参数,依次为this,布局文件(注意这里的
6、布局文件描述的是列表的每一行的布局,android.R.layout.simple_list_item_1yearsmortgagehousing;4.mortgageregistrationformalitiesarecompleted.(D)pledge1.borrower(includingthepledgor)between18-65yearsofage,withfullcivilcapacity;2.collateral是系统定义好的布局文件只显示一行文字,数据源(一个List集合)。同时用setAdapt
7、er()完成适配的最后工作。运行后的现实结构如下图: SimpleCursorAdapter sdk的解释是这样的:AneasyadaptertomapcolumnsfromacursortoTextViewsorImageViewsdefinedinanXMLfile.Youcanspecifywhichcolumnsyouwant,whichviewsyouwanttodisplaythecolumns,andtheXMLfilethatdefinestheappearanceoftheseviews。简单的
8、说就是方便把从游标得到的数据进行列表显示,并可以把指定的列映射到对应的TextView中。 下面的程序是从电话簿中把联系人显示到类表中。先在通讯录中添加一个联系人作为数据库的数据。然后获得一个指向数据库的Cursor并且定义一个布局文件(当然也可以使用系统自带的)。 viewsourceprint?01/**02*@authorallin03
此文档下载收益归作者所有