[安卓] 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/