
本文实例讲述了AndroID编程开发中ListVIEw的常见用法。分享给大家供大家参考,具体如下:
一、ListVIEw的使用步骤
ListVIEw的使用通常有以下三个要素:
(1)ListVIEw中每个条目的布局;
(2)填充进入ListVIEw中的内容;
(3)将内容与页面进行整合的Adapter.
因此,使用ListVIEw也通常有以下三个步骤:
(1)创建ListVIEw条目的布局文件(或使用AndroID SDK提供的布局);
(2)创建填充进入ListVIEw中的内容,如字符串、图片等;
(3)创建Adapter并将其与ListVIEw绑定.
二、使用默认的布局文件创建ListVIEw
因为本例中使用的是AndroID SDK默认的布局文件:androID.R.layout.simple_List_item_1,所以只需创建主Activity布局文件。
ListVIEwTest.xml
<?xml version="1.0" enCoding="utf-8"?> <linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID" androID:layout_wIDth="fill_parent" androID:layout_height="fill_parent" androID:orIEntation="vertical" > <ListVIEw androID:ID="@+ID/myListvIEw" androID:layout_wIDth="fill_parent" androID:layout_height="fill_parent" > </ListVIEw> </linearLayout>
接下来是Activity文件。
ListVIEwTestActivity.java
package com.blogtest; import androID.app.Activity; import androID.os.Bundle; import androID.Widget.ArrayAdapter; import androID.Widget.ListVIEw; public class ListVIEwTestActivity extends Activity { private static String[] strs = new String[] { "1","2","3","4","5" };//定义要显示的数据 private ListVIEw myListVIEw; /** Called when the activity is first created. */ @OverrIDe public voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.ListvIEwtest); findWidgets(); setAdapter(); } private voID findWidgets() { myListVIEw = (ListVIEw) findVIEwByID(R.ID.myListvIEw); } private voID setAdapter() { myListVIEw.setAdapter(new ArrayAdapter<String>(this,//此例中用的是ArrayAdapter androID.R.layout.simple_List_item_1,strs));//使用系统自带的布局文件 } }运行结果为:
三、支持多项选择的ListVIEw
AndroID还提供了一个支持多项选择的item布局文件:androID.R.layout.simple_List_item_multiple_choice.
但还必须调用ListVIEw.setChoiceMode()方法。
修改的代码片段如下:
private voID setAdapter() { myListVIEw.setAdapter(new ArrayAdapter<String>(this,androID.R.layout.simple_List_item_multiple_choice,strs)); myListVIEw.setChoiceMode(ListVIEw.CHOICE_MODE_MulTIPLE); }运行结果为:
四、响应触摸事件
为了让ListVIEw中的Item响应点击事件,需要创建一个OnItemClickListener类并绑定给该ListVIEw。废话不多说,以下为Activity类文件:
package com.blogtest; import androID.app.Activity; import androID.app.AlertDialog; import androID.os.Bundle; import androID.vIEw.VIEw; import androID.Widget.AdapterVIEw; import androID.Widget.AdapterVIEw.OnItemClickListener; import androID.Widget.ArrayAdapter; import androID.Widget.ListVIEw; public class ListVIEwTestActivity extends Activity { private static String[] strs = new String[] { "0","1","5" }; private ListVIEw myListVIEw; /** Called when the activity is first created. */ @OverrIDe public voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.main); findWidgets(); setAdapter(); setListener(); } private voID findWidgets() { myListVIEw = (ListVIEw) findVIEwByID(R.ID.myListvIEw); } private voID setAdapter() { myListVIEw.setAdapter(new ArrayAdapter<String>(this,androID.R.layout.simple_List_item_1,strs)); } private voID setListener() { myListVIEw.setonItemClickListener(new OnItemClickListener() { @OverrIDe public voID onItemClick(AdapterVIEw<?> arg0,VIEw arg1,int arg2,long arg3) { // Todo auto-generated method stub new AlertDialog.Builder(ListVIEwTestActivity.this) .setMessage("Clicked line No." + arg2) .setPositivebutton("Confirm",null).show(); } }); }}运行结果为:
除了OnItemClickListener之外,还有OnItemLongClickListener,OnItemSelectedListener等监听器.
希望本文所述对大家AndroID程序设计有所帮助。
总结以上是内存溢出为你收集整理的Android编程开发中ListView的常见用法分析全部内容,希望文章能够帮你解决Android编程开发中ListView的常见用法分析所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)