ListView的两种使用方法--Android学习笔记

1.

继承ListActivity ,使用listActivity中的  setListActivity()方法,注意在xml中listView的id一定要设置为android:id="@+/android:list"
MainActivity
 
 
 1 package com.example.text;
 2 
 3 import java.util.ArrayList;
 4 import java.util.HashMap;
 5 
 6 import android.app.ListActivity;
 7 import android.os.Bundle;
 8 import android.view.Menu;
 9 import android.widget.ListView;
10 import android.widget.SimpleAdapter;
11 
12 public class MainActivity extends ListActivity {
13 
14     @Override
15     public void onCreate(Bundle savedInstanceState) {
16         super.onCreate(savedInstanceState);
17         setContentView(R.layout.activity_main);
18         ArrayList<HashMap<String,String>>list =new ArrayList<HashMap<String,String>>();
19                HashMap<String,String> map1=new HashMap<String,String>();
20                HashMap<String,String> map2=new HashMap<String,String>();
21                HashMap<String,String> map3=new HashMap<String,String>();
22             // ListView listView=(ListView)findViewById(R.id.list);
23               map1.put("userId", "100001");
24               map1.put("userName", "用户一");
25                list.add(map1);
26               map2.put("userId", "100002");
27              map2.put("userName", "用户二");
28                list.add(map2);
29               map3.put("userId", "100003");
30                map3.put("userName", "用户三");
31              list.add(map3);
32              //定义一个SimpleAdapter,每一个行有两个TextView,分别显示userId和userName
33               SimpleAdapter simpleAdapter=new SimpleAdapter(this,list,R.layout.user,
34                new String[]{"userId","userName"},new int[]{R.id.userId,R.id.userName});
35               //为ListView添加适配器
36               setListAdapter(simpleAdapter);
37               //listView.setAdapter(simpleAdapter);//设置listView背后的数据为simpleAdapter。
38     }
39 
40     @Override
41     public boolean onCreateOptionsMenu(Menu menu) {
42         getMenuInflater().inflate(R.menu.activity_main, menu);
43         return true;
44     }
45 }

 

activity_main.xml
 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="wrap_content"
 6     >
 7     <ListView
 8        android:id="@+id/android:list"
 9         android:layout_width="fill_parent"
10        android:layout_height="wrap_content"
11        />
12 </LinearLayout>

2
直接继承Activity就可以,不过要找到listView的id,用list的setAdapter,这个在xml中的listView的id不需要一定要设置为android:id
 
 1 package com.example.text;
 2 
 3 import java.util.ArrayList;
 4 import java.util.HashMap;
 5 
 6 import android.app.Activity;
 7 import android.os.Bundle;
 8 import android.view.Menu;
 9 import android.widget.ListView;
10 import android.widget.SimpleAdapter;
11 
12 public class MainActivity extends Activity {
13 
14     @Override
15     public void onCreate(Bundle savedInstanceState) {
16         super.onCreate(savedInstanceState);
17         setContentView(R.layout.activity_main);
18         ArrayList<HashMap<String,String>>list =new ArrayList<HashMap<String,String>>();
19                HashMap<String,String> map1=new HashMap<String,String>();
20                HashMap<String,String> map2=new HashMap<String,String>();
21                HashMap<String,String> map3=new HashMap<String,String>();
22              ListView listView=(ListView)findViewById(R.id.list);
23               map1.put("userId", "100001");
24               map1.put("userName", "用户一");
25                list.add(map1);
26               map2.put("userId", "100002");
27              map2.put("userName", "用户二");
28                list.add(map2);
29               map3.put("userId", "100003");
30                map3.put("userName", "用户三");
31              list.add(map3);
32              //定义一个SimpleAdapter,每一个行有两个TextView,分别显示userId和userName
33               SimpleAdapter simpleAdapter=new SimpleAdapter(this,list,R.layout.user,
34                new String[]{"userId","userName"},new int[]{R.id.userId,R.id.userName});
35               //为ListView添加适配器
36               //setListAdapter(simpleAdapter);
37               listView.setAdapter(simpleAdapter);//设置listView背后的数据为simpleAdapter。
38     }
39 
40     @Override
41     public boolean onCreateOptionsMenu(Menu menu) {
42         getMenuInflater().inflate(R.menu.activity_main, menu);
43         return true;
44     }
45 }

 

 
activity_main.xml
 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="wrap_content"
 6     >
 7     <ListView
 8        android:id="@+id/list"
 9         android:layout_width="fill_parent"
10        android:layout_height="wrap_content"
11        />
12 </LinearLayout>

 

转载于:https://www.cnblogs.com/liyajun/archive/2012/10/12/2721597.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值