Spinner

一、spinner控件

Activity代码:

public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        Spinner sp1=null;

        sp1=(Spinner)findViewById(R.id.sp1);

        //第一个参数是当前上下文

        //第二个是sting.xml中定义的数组

        //第三个指定了spinner的样式是一个布局文件id

        ArrayAdapter<CharSequence> ada=ArrayAdapter.createFromResource(this, R.array.app_items

             android.R.layout.simple_spinner_item);

        //设置每个条目样式

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

        sp1.setAdapter(ada);

        sp1.setPrompt("国家");

        sp1.setOnItemSelectedListener(new MySelect());

}

//设置监听

    class MySelect implements OnItemSelectedListener{

       public void onItemSelected(AdapterView<?> ada, View arg1, int pos,

              long arg3) {

           String str=ada.getItemAtPosition(pos).toString();

           Toast.makeText(SpinnerDemoActivity.this, str, Toast.LENGTH_LONG).show();         

       }

       public void onNothingSelected(AdapterView<?> arg0) {

           // TODO Auto-generated method stub

           Toast.makeText(SpinnerDemoActivity.this, "没有选择", Toast.LENGTH_LONG).show();  

       }

    

    }

Strings代码:

<?xmlversion="1.0"encoding="utf-8"?>

<resources>

    <stringname="hello">Hello World, SpinnerDemoActivity!</string>

    <stringname="app_name">SpinnerDemo</string>

    <string-arrayname="app_items">

    <item>中国</item>

    <item>日本</item>

    <item>韩国</item>

    <item>法国</item>

    </string-array>

</resources>

二、使用代码动态添加item

Activity代码:

public class Spinner2Activity extends Activity {

    private Spinner sp=null;

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

    @Override

    //spinner是一个类似于下拉菜单的控件

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        sp=(Spinner)findViewById(R.id.sp1);

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

        list.add("中国");

        list.add("法国");

        ArrayAdapter<String> ada=new ArrayAdapter<String>(this,R.layout.item,R.id.textViewId,list);

        //ada.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

        sp.setAdapter(ada);

        sp.setPrompt("国家");

    }

}

原文地址:https://www.cnblogs.com/itfenqing/p/4429518.html