ListView编程的一般步骤

1)在布局文件中声明ListView控件

2) 使用一维或多维动态数组保存ListView要显示的数据 ;

3) 构建适配器Adapter,将数据与显示数据的布局页面绑定;

4)通过setAdapter()方法把适配器设置给ListView

第一步:编写布局文件main.xml,添加三个Textview和listview实现整体布局。具体代码如下

View Code

 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3     android:orientation="vertical" 4     android:layout_width="fill_parent" 5     android:layout_height="fill_parent" 6     > 7     <TextView android:layout_width="fill_parent" 8             android:layout_height="wrap_content" 9             android:text="@string/tv1"10             android:background="#FFF"11             android:textColor="#888"12             android:gravity="center"/>13     <ListView android:id="@+id/lvCheckedTextView"14             android:layout_width="fill_parent"15             android:layout_height="wrap_content"/>16     17     <TextView android:layout_width="fill_parent"18             android:layout_height="wrap_content"19             android:text="@string/tv2"20             android:background="#FFF"21             android:textColor="#888"22             android:gravity="center"/>23     <ListView android:id="@+id/lvRadioButton"24             android:layout_width="fill_parent"25             android:layout_height="wrap_content"/>26             27     <TextView android:layout_width="fill_parent"28             android:layout_height="wrap_content"29             android:text="@string/tv3"30             android:background="#FFF"31             android:textColor="#888"32             android:gravity="center"/>33     <ListView android:id="@+id/lvCheckedButton"34             android:layout_width="fill_parent"35             android:layout_height="wrap_content"/>36         37 </LinearLayout>

第二步:修改String.xml文件的内容,方便程序或者main.xml访问,具体代码如下

View Code

1 <?xml version="1.0" encoding="utf-8"?>2 <resources>3     <string name="hello">Hello World, Listview02Activity!</string>4     <string name="app_name">Listview02</string>5     <string name="tv1">单项打勾</string>6     <string name="tv2">RadioButton</string>7     <string name="tv3">CheckBox</string>8 </resources>

第三步:修改ListView01.java,添加listview的相关操作,具体代码如下

View Code

 1 package cn.shaoyangjiang.com; 2  3 import android.app.Activity; 4 import android.os.Bundle; 5 import android.widget.ArrayAdapter; 6 import android.widget.ListView; 7  8 public class Listview02Activity extends Activity { 9     /** Called when the activity is first created. */10     @Override11     public void onCreate(Bundle savedInstanceState) {12         super.onCreate(savedInstanceState);13         setContentView(R.layout.main);14         //得到三个listview15         ListView listview1 = (ListView)findViewById(R.id.lvCheckedTextView);16         ListView listview2 = (ListView)findViewById(R.id.lvRadioButton);17         ListView listview3 = (ListView)findViewById(R.id.lvCheckedButton);18         //用string来保存listview要显示的数据19         String[] data = new String[]20            {"邵洋江加油","你会成功的"};21         //构建适配器Adapter,将数据与显示数据的布局页面绑定;22         ArrayAdapter<String> lv1Adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_checked,data);23         //通过setAdapter()方法把适配器设置给ListView24         listview1.setAdapter(lv1Adapter);25         //listview里的内容设置为单选26         listview1.setChoiceMode(ListView.CHOICE_MODE_SINGLE);27         28         ArrayAdapter<String> lv2Adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_single_choice,data);29         listview2.setAdapter(lv2Adapter);30         listview2.setChoiceMode(ListView.CHOICE_MODE_SINGLE);31         32         ArrayAdapter<String> lv3Adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_multiple_choice,data);33         listview3.setAdapter(lv3Adapter);34         listview3.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);35         }36 }

具体效果如下:

如果还想深入了解,下面的链接不错

Android之Adapter用法总结:http://kb.cnblogs.com/a/2328334/

转载于:https://www.cnblogs.com/shaoyangjiang/archive/2012/02/24/2366417.html

android Listview2 笔记相关推荐

  1. Android进阶笔记:Messenger源码详解

    Messenger可以理解为一个是用于发送消息的一个类用法也很多,这里主要分析一下再跨进程的情况下Messenger的实现流程与源码分析.相信结合前面两篇关于aidl解析文章能够更好的对aidl有一个 ...

  2. Android学习笔记21:ImageView获取网络图片

    Android平台有3种网络接口可以使用,它们分别是:java.net.*(标准java接口).org.apache(Apache接口)和android.net.*(Android网络接口).本文将使 ...

  3. Android进阶笔记:AIDL内部实现详解 (二)

    接着上一篇分析的aidl的流程解析.知道了aidl主要就是利用Ibinder来实现跨进程通信的.既然是通过对Binder各种方法的封装,那也可以不使用aidl自己通过Binder来实现跨进程通讯.那么 ...

  4. Android学习笔记(七):多个Activity和Intent

    根据www.mars-droid.com:Andriod开发视频教学,先跳过书本<Beginning Android 2>的几个章,我是这两个资源一起看,需要进行一下同步.先初步了解一下应 ...

  5. Android学习笔记26:图片切换控件ImageSwitcher的使用

    在Windows操作系统中,要查看多张图片,可以通过使用"Windows照片查看器"在"上一张"和"下一张"之间切换,进行多张图片的浏览. ...

  6. Android学习笔记36:使用SQLite方式存储数据

    在Android中一共提供了5种数据存储方式,分别为: (1)Files:通过FileInputStream和FileOutputStream对文件进行操作.具体使用方法可以参阅博文<Andro ...

  7. Pro Android学习笔记(二九):用户界面和控制(17):include和merge

    xml控件代码重用:include 如果我们定义一个控件,需要在不同的layout中重复使用,或者在同一个layout中重复使用,可以采用include的方式.例如定义my_button.xml如下 ...

  8. Android学习笔记:TabHost 和 FragmentTabHost

    2019独角兽企业重金招聘Python工程师标准>>> Android学习笔记:TabHost 和 FragmentTabHostTabHost命名空间:android.widget ...

  9. 【转】 Pro Android学习笔记(二九):用户界面和控制(17):include和merge

    目录(?)[-] xml控件代码重用include xml控件代码重用merge 横屏和竖屏landsacpe portrait xml控件代码重用:include 如果我们定义一个控件,需要在不同的 ...

最新文章

  1. 计算机主机的灯一直闪,电脑硬盘灯一直闪怎么办|电脑硬盘灯狂闪的解决方法...
  2. 12个球问题--微软面试题
  3. node.js学习笔记
  4. Android数据库LitePal的存储操作
  5. 开发中的坑:MQ 也能做 RPC 调用?
  6. 学会了很多计算机小技巧,超实用的八个电脑小技巧,全都学会让你成为电脑高手...
  7. oracle 更新flwid,Oracle分析函数RANK(),ROW_NUMBER(),LAG()等的使用方法
  8. 关于安装AccessDatabaseEngine_x64.exe 的说明
  9. 正则表达式 以字符串开头_干货-Shell编程之正则表达式
  10. Postgresql:本地化支持
  11. Broadcom Wi-FiWl及brcmfmac驱动程序含有众多安全漏洞
  12. 6种展示代码的绝佳方式
  13. element实现小问号提示
  14. html项目符号正方形,html – 列表项下的项目符号
  15. 懂车帝上配置高的国产车为什么那么便宜?
  16. EPI晶片的表面微观粗糙度对湿化学处理的依赖性
  17. Spotify大规模敏捷之路
  18. 2345内核拒绝服务漏洞(3)- WORD的锅
  19. 文献与逻辑的联手——评林奎成《吴三桂与甲申之变》王立群新浪博客
  20. CDISC的ADaMIG (V1.2) 中英文对照【2】_第二章 ADaM标准的基础

热门文章

  1. 中文 lda数据预处理_英文文本挖掘预处理流程总结
  2. MySQL笔记-Windows安装MySQL5.7
  3. Java笔记-DH密钥交换
  4. Java笔记-jdbc传输clob到Oracle数据库
  5. C++|Java混合实验-Spring Boot获取客户端操作系统,浏览器,Ip等信息,Qt端展示
  6. C/C++对象的序列化
  7. HTML静态网页作业-篮球网页
  8. kbengine 的 nginx反向代理https/wss 配置 支持kbe负载均衡
  9. linux mysql使用
  10. 和渠道商成为真朋友,CDEC大会做对了什么?