Android控件之ListView探究

来源:互联网 发布:红帽linux语言改为中文 编辑:程序博客网 时间:2024/05/17 08:27

在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示。

main.xml布局文件

[html] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout android:id="@+id/LinearLayout01"  
  3. android:layout_width="fill_parent" android:layout_height="fill_parent"  
  4. xmlns:android="http://schemas.android.com/apk/res/android">  
  5. <ListView android:layout_width="wrap_content"  
  6. android:layout_height="wrap_content"  
  7. android:id="@+id/MyListView">  
  8. </ListView>  
  9. </LinearLayout>  

my_listitem.xml布局文件

[html] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout android:layout_width="fill_parent"  
  3. xmlns:android="http://schemas.android.com/apk/res/android"  
  4. android:orientation="vertical"  
  5. android:layout_height="wrap_content"  
  6. android:id="@+id/myListItem"  
  7. android:paddingBottom="3dip"  
  8. android:paddingLeft="10dip">  
  9. <TextView android:layout_height="wrap_content"  
  10. android:layout_width="fill_parent"  
  11. android:id="@+id/itemTitle"  
  12. android:textSize="20dip">  
  13. </TextView>  
  14. <TextView android:layout_height="wrap_content"  
  15. android:layout_width="fill_parent"  
  16. android:id="@+id/itemText">  
  17. </TextView>  
  18. </LinearLayout>  

LsActivity类

[java] view plaincopy
  1. package com.ljq.ls;  
  2.   
  3. import java.util.ArrayList;  
  4. import java.util.HashMap;  
  5. import java.util.List;  
  6.   
  7. import android.app.Activity;  
  8. import android.os.Bundle;  
  9. import android.widget.ListView;  
  10. import android.widget.SimpleAdapter;  
  11.   
  12. public class LsActivity extends Activity {  
  13. private ListView list = null;  
  14.   
  15. public void onCreate(Bundle savedInstanceState) {  
  16. super.onCreate(savedInstanceState);  
  17. setContentView(R.layout.main);  
  18. list = (ListView) findViewById(R.id.MyListView);  
  19.   
  20. //组织数据源  
  21. List<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();  
  22. for(int i=0;i<10;i++) {  
  23. HashMap<String, String> map = new HashMap<String, String>();  
  24. map.put("itemTitle""This is Title");  
  25. map.put("itemText""This is text");  
  26. mylist.add(map);  
  27. }  
  28.   
  29. //配置适配器  
  30. SimpleAdapter adapter = new SimpleAdapter(this,  
  31. mylist,//数据源  
  32. R.layout.my_listitem,//显示布局  
  33. new String[] {"itemTitle""itemText"}, //数据源的属性字段  
  34. new int[] {R.id.itemTitle,R.id.itemText}); //布局里的控件id  
  35. //添加并且显示  
  36. list.setAdapter(adapter);  
  37. }  
  38. }  

运行结果




-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

欢迎关注 IT专栏 微信公众号  ITCodePush


 


1 0