1.回顾
上篇 学会了 GridView 的使用,基本的SimapleAdapter 实现
2.这篇
(1)使用 SimapleAdapter 实现 图文下拉列表
(2) 使用ArrayAdapter 实现 文字下拉列表
(3) setOnItemSelectedListener (这里和前面的就不一样了)
3.实现
在学习过程中 包括ListView ,GridView ,Spanner 都是一样的步骤:准备数据源,准备适配器,设置适配器
3.1SimpleAdapter 实现
准备数据源;实例适配器 ,视图设置适配器;
List> maps=new ArrayList>();
for(int i=0;i<21;i++){
Map map=new HashMap();
map.put("image",R.drawable.ic_launcher);
map.put("name","yuan"+i);
maps.add(map);
}
SimpleAdapter simpleAdapter=new SimpleAdapter(this,maps,R.layout.list_main,new String[]{"image","name"},new int[]{R.id.imageView1,R.id.textView2});
spinner1.setAdapter(simpleAdapter);
spinner1.setOnItemSelectedListener(new spanItemSelectListener());
list_main 实现:
android:layout_width="match_parent"
android:orientation="vertical"
android:gravity="center"
android:layout_height="match_parent" >
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher" />
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
3.2 ArrayAdapter
这个因为没有图片,所以使用ArrayAdapter 实现 ,更简单;
//设置数据源
List list=new ArrayList();
list.add("焦作");
list.add("温县");
list.add("郑州");
list.add("河南理工");
ArrayAdapter arrayAdapter=new ArrayAdapter(this,android.R.layout.simple_list_item_1,list);
//设置样式
arrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner1.setAdapter(arrayAdapter);
spinner1.setOnItemSelectedListener(new spanItemSelectListener());
4.setOnItemSelectedListener
选择监听事件,依然通过 position 实现
/**
* Spinner 点击事件
* @author yuan
*
*/
class spanItemSelectListener implements OnItemSelectedListener{
@Override
public void onItemSelected(AdapterView> parent, View view,
int position, long id) {
// 通过position
tv_spinner.setText(spinner1.getItemAtPosition(position).toString());
}
@Override
public void onNothingSelected(AdapterView> parent) {
// TODO Auto-generated method stub
}
}
5.总结
目前为止 使用适配器的 有 listview , gridview , spanner ;