Android中Spinner的使用方法

(1)在布局文件中的声明
    <Spinner
    android:id="@+id/spinnerld"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    />
(2)在String.xml当中声明一个数组
    <String-array name="planets_array">
    <item>Mercury</item>
    <item>Venus</item>
    </String-array>
(3)创建一个ArrayAdapter
    public   void  onCreate ( Bundle  savedInstanceState )   {
    
     super . onCreate ( savedInstanceState );
          setContentView ( R . layout . main );
          Spinner  spinner  =   ( Spinner )  findViewById ( R . id . spinner );
       创建下拉菜单的样式
    
     ArrayAdapter < CharSequence >  adapter  =   ArrayAdapter . createFromResource (
                  this ,  R . array . planets_array ,  android . R . layout . simple_spinner_item );
          定义soinner中每个条目的样式
          adapter . setDropDownViewResource ( android . R . layout . simple_spinner_dropdown_item );
          设置spinner对象(通过设置赋值给spinner对象)
          spinner . setAdapter ( adapter );
           setPrompt("设置下拉菜单的标题")
    }
(3)创建一个监听器
    public   class   MyOnItemSelectedListener   implements   OnItemSelectedListener   {
    
     public   void  onItemSelected ( AdapterView <?>  parent ,
              View  view ,   int  pos ,   long  id )   {
           Toast . makeText ( parent . getContext ()),   "The planet is "   +
                parent . getItemAtPosition ( pos ). toString (),   Toast . LENGTH_LONG ). show ();
         }

   
     public   void  onNothingSelected ( AdapterView  parent )   {
            // Do nothing.
         }
    }
(4)在Oncreat方法中注册监听器
     spinner . setOnItemSelectedListener ( new   MyOnItemSelectedListener ());
ArrayAdapter的另一种用法
    除了从可以使用strings.xml文件当中的数组创建ArrayAdapter之外,还可以动态的创建 ArrayAdapter
    List<String>list = new ArrayList<String>();
    list.add("test1");
    lsit.add("test2“);
    ArrayAdapter adapter = new ArrayAdapter(this,R.layout.item,R.id.textViewld,list);

猜你喜欢

转载自blog.csdn.net/u013560890/article/details/20769237
今日推荐