zoukankan      html  css  js  c++  java
  • Spinner控件

      首先在XML文件中声明一个Spinner控件:

        <Spinner
          android:id="@+id/spinnerId"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content" />
      静态绑定Spinner对象中的内容:

                首先在strings.xml中声明一个string-array:

          <string-array name="playlist">
            <item >see you again</item>
            <item >lighteststart</item>
            <item >father</item>
            <item >时间都去哪啦</item>
          </string-array>

        在MainActivity中代码如下:

          spinner = (Spinner)findViewById(R.id.spinnerId);
          ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.playlist, android.R.layout.simple_spinner_item);
          //设置Spinner当中每个条目的模式
          adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
          spinner.setAdapter(adapter);
          //设置标题
          spinner.setPrompt("歌曲列表");

      动态绑定Spinner对象中的内容:

        List<String> list = new ArrayList<String>();
        list.add("text1");
        list.add("text2");

                //item.xml中指定了下拉菜单中的样式,第三个参数指定了textView控件的ID,list为指定的数据,可以为任何类型
        ArrayAdapter adapter = new ArrayAdapter(this,R.layout.item,R.id.textViewid,list);
        spinner.setAdapter(adapter);
        //设置标题
        spinner.setPrompt("歌曲列表");

      通过设置监听器,监听当前用户点击的spinner控件中的哪个条目:

        spinner.setOnItemSelectedListener((OnItemSelectedListener) new SpinnerItemClickListener());

        class SpinnerItemClickListener implements OnItemClickListener{

          @Override
          public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
            long arg3) {
              // arg0为点击的Spinner对象,arg1为item对象,arg2为position,arg3为ID
              arg0.getItemAtPosition(arg2).toString();
          }

        }

  • 相关阅读:
    如何写好软件需求说明?
    怎么做,与为什么?[转]
    WCF学习中遇到的一些问题
    删除数据库中所有表、视图以及存储过程
    如何获取Repeater的当前行号
    Asp.Net 获取FileUpload控件的文件路径、文件名、扩展名
    IP地址通过WebService得到城市
    springboot、intellij与docker的结合
    开源GIS软件初探
    Statement接口提供的execute、executeQuery和executeUpdate之间的区别
  • 原文地址:https://www.cnblogs.com/zhanglei93/p/4722273.html
Copyright © 2011-2022 走看看