Spinner与适配器Adapter使用总结
2012-04-17 11:38
393 查看
Spinner的使用离不开和Adapter结合使用,下面将基本的常用法介绍一下,主要还是为初学者提供些帮助
第一步:创建布局文件
第二步:在资源文件中定义如下:
<string-array name="countrys">
<item>aaa</item>
<item>bbb</item>
<item>ccc</item>
<item>ddd</item>
</string-array>
第三步:写测试类和Spinner结合使用
第四步:演示效果
第一步:创建布局文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/mylinearlayout" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <Spinner android:id="@+id/spinner1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:entries="@array/countrys" /> <Spinner android:id="@+id/spinner2" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <Spinner android:id="@+id/spinner3" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <Spinner android:id="@+id/spinner4" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
第二步:在资源文件中定义如下:
<string-array name="countrys">
<item>aaa</item>
<item>bbb</item>
<item>ccc</item>
<item>ddd</item>
</string-array>
第三步:写测试类和Spinner结合使用
public class AndroidPracticeTestActivity extends Activity { private Spinner spinner1=null; private Spinner spinner2=null; private Spinner spinner3=null; private Spinner spinner4=null; private String obj[]={"abc","cbd","acd","efg"}; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.spinner_main); //获取Spinner对象 spinner1=(Spinner)findViewById(R.id.spinner1); spinner2=(Spinner)findViewById(R.id.spinner2); spinner3=(Spinner)findViewById(R.id.spinner3); spinner4=(Spinner)findViewById(R.id.spinner4); //Spinner添加监听 spinner1.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) { System.out.println("spinner1arg3="+arg3); } @Override public void onNothingSelected(AdapterView<?> arg0) { // TODO Auto-generated method stub } }); //定义适配器 ArrayAdapter<String> adapter2=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, obj); adapter2.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line); spinner2.setAdapter(adapter2); spinner2.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) { System.out.println("spinner2arg3="+arg3); } @Override public void onNothingSelected(AdapterView<?> arg0) { // TODO Auto-generated method stub } }); //定义适配器 ArrayAdapter<CharSequence> adapter3=ArrayAdapter.createFromResource(this, R.array.countrys, android.R.layout.simple_list_item_1); adapter3.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line); spinner3.setAdapter(adapter3); spinner3.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) { System.out.println("spinner3arg3="+arg3); } @Override public void onNothingSelected(AdapterView<?> arg0) { // TODO Auto-generated method stub } }); //自定义适配器 BaseAdapter ma= new BaseAdapter(){ @Override public int getCount() { // TODO Auto-generated method stub return 5; } @Override public Object getItem(int arg0) { if(arg0==0){ return "a"; }else if(arg0==1){ return "b"; }else if(arg0==2){ return "c"; }else if(arg0==3){ return "d"; }else if(arg0==4){ return "e"; }else{ return "jjj"; } } @Override public long getItemId(int arg0) { // TODO Auto-generated method stub return 0; } @Override public View getView(int position, View convertView, ViewGroup parent) { TextView tv=new TextView(AndroidPracticeTestActivity.this); tv.setText((String)getItem(position)); tv.setTextColor(Color.RED); return tv; } }; spinner4.setAdapter(ma); } }
第四步:演示效果
相关文章推荐
- Spinner与适配器Adapter使用总结
- Spinner与适配器Adapter使用总结
- Spinner与适配器Adapter使用总结
- android 适配器Adpter的使用总结 之 BaseExpandableListAdapter
- android 适配器Adapter的使用总结
- android 适配器Adpter的使用总结 之 BaseExpandableListAdapter
- Android高手进阶教程(十六)之---Android中万能的BaseAdapter(Spinner,ListView,GridView)的使用!
- Android中Spinner下拉列表(使用ArrayAdapter和自定义Adapter实现)
- ViewPager 的适配器 PagerAdapter 、FragmentPagerAdapter与FragmentStatePagerAdapter使用详解与区别
- Android高手进阶教程(十六)之---Android中万能的BaseAdapter(Spinner,ListView,GridView)的使用!
- Android定制ListView的界面(使用继承自ArrayAdapter的自定义适配器)--《第一行代码Android》学习笔记
- android listview和适配器adapter的使用
- Android高手进阶教程(十六)之---Android中万能的BaseAdapter(Spinner,ListView,GridView)的使用!
- 使用ViewPagerAdapter 页面引导适配器设置app启动页,引导页面的实现
- 使用通用适配器Base-adapter-helper
- Listview之适配器(quickAdapter使用)
- Android开发适配器系列:Spinner使用自定义适配器
- android 适配器Adpter的使用总结
- Adapter——适配器的使用
- 自定义滚轮效果选择器spinnerwheel的使用总结