现在的位置: 首页 > 综合 > 正文

Spinner的用法

2014年07月23日 ⁄ 综合 ⁄ 共 1405字 ⁄ 字号 评论关闭

 

使用Spinner的步骤

//通过ID,得到Spinner对象

   spinner = (Spinner)findViewById(R.id.spinnerId);

//构造adapter

spinner.setAdapter(adapter);

//设置Spinner当中每个条目的样式,同样是引用一个Android系统提供的布局文件

adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

 

spinner.setPrompt("测试");

//为spinner对象绑定监听器

spinner.setOnItemSelectedListener(newSpinnerOnSelectedListener());

 

 

所以关键问题是构造adapter

1.   静态构造

//通过createFromResource方法创建一个ArrayAdapter对象

   //第一个参数是指上下文对象

     //第二参数引用了在strings.xml文件当中定义的String数组

     //第三个参数是用来指定Spinner的样式,是一个布局文件ID,该布局文件由Android系统提供,也可替换为自己定义的布局文件

     ArrayAdapter<CharSequence> adapter =ArrayAdapter.createFromResource(

         this, R.array.planets_array,

          android.R.layout.simple_spinner_item);

 

2.  动态添加

List<String> list = new ArrayList<String>();

     list.add("test1");

     list.add("test2");

     //调用ArrayAdapter的构造函数来创建ArrayAdapter对象

     //第一个参数是指上下文对象

     //第二个参数指定了下拉菜单当中每一个条目的样式

     //第三个参数指定了TextView控件的ID

     //第四个参数为整个列表提供数据

     ArrayAdapteradapter = new ArrayAdapter(this,R.layout.item,R.id.textViewId,list);

 

其次,是监听器的编写

//第一个参数为父控件,第二个为每一个条目

public void onItemSelected(AdapterView<?> adapterView, View view,int position,

          long id) {

       String selected =adapterView.getItemAtPosition(position).toString();

       System.out.println(selected);

     }

 

     @Override

     public voidonNothingSelected(AdapterView<?> adapterView) {

       // TODO Auto-generated methodstub

       System.out.println("nothingSelected");

     }

    

  }

 

 

 

 

 

抱歉!评论已关闭.