ListView是一个经常用到的控件,ListView里面的每个子项Item可以使一个字符串,也可以是一个组合控件。先说说ListView的实现:
1.准备ListView要显示的数据 ;
2.使用 一维或多维 动态数组 保存数据;
2.构建适配器 , 简单地来说, 适配器就是 Item数组 , 动态数组 有多少元素就生成多少个Item;
3.把 适配器 添加到ListView,并显示出来。
接下来,看看本文代码所实现的ListView:
接下来,就开始UI的XML代码:
main.xml代码如下,很简单,也不需要多做解释了:
[xhtml] view plaincopyprint?
01.<?xml version="1.0" encoding="utf-8"?>
02.<LinearLayout
03. android:id="@+id/LinearLayout01"
04. android:layout_width="fill_parent"
05. android:layout_height="fill_parent"
06. xmlns:android="http://schemas.android.com/apk/res/android">
07.
08. <ListView android:layout_width="wrap_content"
09. android:layout_height="wrap_content"
10. android:id="@+id/MyListView">
11. </ListView>
12.</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:id="@+id/LinearLayout01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<ListView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/MyListView">
</ListView>
</LinearLayout>
my_listitem.xml的代码如下,my_listitem.xml用于设计ListView的Item:
[xhtml] view plaincopyprint?
01.<?xml version="1.0" encoding="utf-8"?>
02.<LinearLayout
03. android:layout_width="fill_parent"
04. xmlns:android="http://schemas.android.com/apk/res/android"
05. android:orientation="vertical"
06. android:layout_height="wrap_content"
07. android:id="@+id/MyListItem"
08. android:paddingBottom="3dip"
09. android:paddingLeft="10dip">
10. <TextView
11. android:layout_height="wrap_content"
12. android:layout_width="fill_parent"
13. android:id="@+id/ItemTitle"
14. android:textSize="30dip">
15. </TextView>
16. <TextView
17. android:layout_height="wrap_content"
18. android:layout_width="fill_parent"
19. android:id="@+id/ItemText">
20. </TextView>
21.</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:layout_width="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_height="wrap_content"
android:id="@+id/MyListItem"
android:paddingBottom="3dip"
android:paddingLeft="10dip">
<TextView
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:id="@+id/ItemTitle"
android:textSize="30dip">
</TextView>
<TextView
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:id="@+id/ItemText">
</TextView>
</LinearLayout>
解释一下,里面用到的一些属性:
1.paddingBottom="3dip",Layout往底部留出3个像素的空白区域
2.paddingLeft="10dip",Layout往左边留出10个像素的空白区域
3.textSize="30dip",TextView的字体为30个像素那么大。
最后就是JAVA的源代码:
[java] view plaincopyprint?
01.public void onCreate(Bundle savedInstanceState) {
02. super.onCreate(savedInstanceState);
03. setContentView(R.layout.main);
04. //绑定XML中的ListView,作为Item的容器
05. ListView list = (ListView) findViewById(R.id.MyListView);
06.
07. //生成动态数组,并且转载数据
08. ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
09. for(int i=0;i<30;i++)
10. {
11. HashMap<String, String> map = new HashMap<String, String>();
12. map.put("ItemTitle", "This is Title.....");
13. map.put("ItemText", "This is text.....");
14. mylist.add(map);
15. }
16. //生成适配器,数组===》ListItem
17. SimpleAdapter mSchedule = new SimpleAdapter(this, //没什么解释
18. mylist,//数据来源
19. R.layout.my_listitem,//ListItem的XML实现
20.
21. //动态数组与ListItem对应的子项
22. new String[] {"ItemTitle", "ItemText"},
23.
24. //ListItem的XML文件里面的两个TextView ID
25. new int[] {R.id.ItemTitle,R.id.ItemText});
26. //添加并且显示
27. list.setAdapter(mSchedule);
28.}
- 大小: 33.4 KB
分享到:
相关推荐
关于ListView,算是android中比较常见的控件,在ListView我们通常需要一个模板,这个模板指的不是住模块,而是配置显示在ListView里面的东西,今天做项目的时候发现想要添加一个ImageView监听方法,发现崩了,也许...
通过这个实例,开发者可以了解如何在Android应用中使用`Toast`显示消息提示,以及如何利用`ListView`展示数据并处理点击事件。这将为创建更复杂的用户界面和交互提供基础。在实际开发中,还可以结合网络请求、数据库...
listview/gridview加载显示大量图片,对内存和性能都是严峻的考验。常引起OOM,滚动卡顿等问题。该示例代码完美解决了上述问题。...该代码用listview作为示范,但是里面用到的技术完全可以用于gridview。
本资源包"关于android所有控件的示范"提供了一个全面的示例集合,旨在帮助开发者理解和掌握Android平台上的各种控件用法。这些示范代码对于初学者来说极具价值,可以作为学习和参考的模板。 首先,我们从基础控件...
内容简介 · · · · · · Android 4的问世,标志着Google将Android操作系统的大旗插到了智能手机和平板电脑的阵营中。这本指南书将教会您成功开发Android应用程序所需的一切。...◆ 示范了如何将长时...
4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与ListActivity的结合.. 4.22 加载手机磁盘里的图文件——使用...
4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与ListActivity的结合.. 4.22 加载手机磁盘里的图文件——使用...
4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与ListActivity的结合.. 4.22 加载手机磁盘里的图文件——使用...
4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与ListActivity的结合.. 4.22 加载手机磁盘里的图文件——使用...
4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与ListActivity的结合.. 4.22 加载手机磁盘里的图文件——...
4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与ListActivity的结合.. 4.22 加载手机磁盘里的图文件——使用...
4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与ListActivity的结合.. 4.22 加载手机磁盘里的图文件——使用...
第8章 当Android与Internet接轨 8.1 HTTPGET/POST传递参数——HTTP连接示范 8.2 在程序里浏览网页——WebView.loadUrl 8.3 嵌入HTML标记的程序——WebView.loadData 8.4 设计前往打开网页功能——Intent与Uri.parse ...
4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与ListActivity的结合.. 4.22 加载手机磁盘里的图文件——使用...
4.19 在Activity里显示列表列表——ListView的布局 4.20 以动态列表配置选项——ListActivity与Menu整合技巧 4.21 查找程序根目录下所有文件——JavaI/O与ListActivity的结合.. 4.22 加载手机磁盘里的图文件——使用...
项目可能示范了如何在XML布局文件中定义UI,以及在Java代码中操控这些组件。 总的来说,"Hello_BaseUI"项目是学习和理解Android基础UI组件和布局设计的宝贵资源。通过研究这个项目的源代码,开发者可以更好地掌握...
从RecyclerView(或ListView)到ViewPager的。 通过滚动和缩放手势退出完整图像模式。 具有动画支持的圆形图像。 (支持旋转)。 。 :向下(触摸),向上(触摸),单击,双击,长按。 自定义状态动画(动画位置,...