十四.创建一个spinner下拉列表

一.方法一

a)         在主Activity的布局文件中添加一个Spinner控件。

<Spinner android:id="@+id/spinnderid"

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        />


b)        在string.xml文件中创建一个string-array标签,添加列表内容

 <string-array name="spinner_array">

        <item>测试一</item>

        <item>测试二</item>

        <item>测试三</item>

        <item>测试四</item>

        <item>测试五</item>

        <item>测试六</item>

    </string-array>



 


 

   c)         在Activity中添加如下代码

package paj.spinnerTest;

 

import java.util.ArrayList;

import java.util.List;

 

import junit.framework.Test;
import android.R.anim;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Spinner;

public class SpinnerTestActivity extends Activity {

    /** Called when the activity is first created. */

    @Override

    public void onCreate(Bundle savedInstanceState) {

           super.onCreate(savedInstanceState);
           setContentView(R.layout.main);
           // 获取一个spinner控件
           Spinner spinner = (Spinner) findViewById(R.id.spinnderid);
           //创建一个ArrayAdapter对象   
            //第一个参数,当前窗体
            //第二个参数,存放下拉列表内容的数组
            //第三个参数,下拉菜单的布局样式。可以使用android内置的样式也可以自定义

            ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
            this,
            R.array.spinner_array,
            android.R.layout.simple_spinner_item);

           //设置下拉菜单内容的布局样式。可以使用android内置的样式也可以自定义
            adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
           spinner.setAdapter(adapter);
          //标题
            spinner.setPrompt("测试");
          //设置监听事件
            spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
                //第一个参数,发生选中事件的控件
                  //第二个参数,下拉列表的内容视图
                  //第三个参数,下拉列表内容视图中的条目位置索引
                  //第四个参数,被点击条目的ID
               public void onItemSelected(AdapterView<?> arg0, View arg1,int arg2, long arg3) {
                     // 调用getItemAtPosition的toString()方法获取字符串
                         System.out.println(arg0.getItemAtPosition(arg2).toString());
                  }

                 public void onNothingSelected(AdapterView<?> arg0) {

                         // TODO Auto-generated method stub

                         System.out.println("NoT Selected!");
                  }
           });
    }

}


二.动态添加列表内容

a)         创建一个List对象,并向List对象中添加内容。

b)        使用ArrayAdapter四个参数的构造函数创建一个对象,而不使用ArrayAdapter.createFromResource方法创建

c)         代码如下:

             

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

              list.add("测试测试一");

              list.add("测试测试二");           

            //第一个参数为 当前Activity对象

              //第二个参数为 自定义的Spinner布局文件

              //第三个参数为 下拉列表内容样式布局文件

              //第三个参数为 动态添加的List

              ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,

                     R.layout.item ,      

                     R.id.Items, 

                     list);


使用这种方法就不需要使用adapter.setDropDownViewResource来设置列表样式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值