[安卓] 6、列表之ArrayAdapter适配

 

 


这个和以前的几个都有点不同,首先这个不用在xml中写对应的控件,而是直接在activity中将整个list实现的:首先要实例化列表和用于存储数据的数组list[9-10],第12-14行放list里加入3个数据,这里最不同的一点是要一个适配器:ArrayAdapter<String> aa ;这个适配器要在第20行实例化,并在21行lv.setAdapter(aa);将适配器数据映射ListView上~

  • lv = new ListView(this);//实例化列表
  • list = new ArrayList<String>();//实例化List
 1 public class MainActivity extends Activity {
 2    private ListView lv ;//声明一个列表
 3    private List<String> list ;//声明一个List容器
 4    private ArrayAdapter<String> aa ;
 5     @Override
 6     public void onCreate(Bundle savedInstanceState) {
 7         super.onCreate(savedInstanceState);
 8         setContentView(R.layout.main);
 9         lv = new ListView(this);//实例化列表 
10         list = new ArrayList<String>();//实例化List
11         //往容器中添加数据
12         list.add("Item1");
13         list.add("Item2");
14         list.add("Item3");
15         //实例适配器
16         //第一个参数:Context
17         //第二个参数:ListView中每一行布局样式
18         //android.R.layout.simple_list_item_1:系统中每行只显示一行文字布局
19         //第三个参数:列表数据容器
20         aa = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,list);
21         lv.setAdapter(aa);//将适配器数据映射ListView上
22         //为列表添加监听
23         lv.setOnItemClickListener(new OnItemClickListener() {
24             @Override
25             public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
26                 Toast.makeText(MainActivity.this, "当前选中列表项的下标为:"+arg2, Toast.LENGTH_SHORT).show();
27             }
28         });
29         this.setContentView(lv);
30     }
31 }

 

 

 

本文链接:http://www.cnblogs.com/zjutlitao/p/4229837.html

更多精彩:http://www.cnblogs.com/zjutlitao/

 

posted @ 2015-01-16 21:57  beautifulzzzz  阅读(561)  评论(0编辑  收藏  举报