zoukankan      html  css  js  c++  java
  • Spinner学习

    我暂且把Spinner称作下拉选择框吧,先来看一下它的效果:

    在layout文件中添加Spinner的代码如下:

    <Spinner
        android:id="@+id/planets_spinner"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

    要在选择列表中填充选项,必须指定一个SpinnerAdapter。

    在Spinner中填充用户选项

    在字符串资源文件中定义选项:

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string-array name="planets_array">
            <item>Mercury</item>
            <item>Venus</item>
            <item>Earth</item>
            <item>Mars</item>
            <item>Jupiter</item>
            <item>Saturn</item>
            <item>Uranus</item>
            <item>Neptune</item>
        </string-array>
    </resources>

    有了上面的字符串数组,下面代码通过ArrayAdapter将选项传递给Spinner:

    Spinner spinner = (Spinner) findViewById(R.id.spinner);
    // Create an ArrayAdapter using the string array and a default spinner layout
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
            R.array.planets_array, android.R.layout.simple_spinner_item);
    // Specify the layout to use when the list of choices appears
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    // Apply the adapter to the spinner
    spinner.setAdapter(adapter);

      createFromResource()方法可以根据字符串资源构造一个ArrayAdapter。

      setDropDownViewResource()指定下拉列表的显示方式。

      setAdapter()将adapter应用于Spinner。

    响应用户的选择

    当用户在下拉框中选择一个选项时,Spinner对象接收到一个on-item-selected事件。

    为Spinner添加事件处理,实现 AdapterView.OnItemSelectedListener接口和相应的onItemSelected()方法。

    public class SpinnerActivity extends Activity implements OnItemSelectedListener {
        ...
        
        public void onItemSelected(AdapterView<?> parent, View view, 
                int pos, long id) {
            // An item was selected. You can retrieve the selected item using
            // parent.getItemAtPosition(pos)
        }
    
        public void onNothingSelected(AdapterView<?> parent) {
            // Another interface callback
        }
    }

    然后,调用 setOnItemSelectedListener()指定实现的接口

    Spinner spinner = (Spinner) findViewById(R.id.spinner);
    spinner.setOnItemSelectedListener(this);

    ***

  • 相关阅读:
    <置顶>Eclipse和myeclipse常用快捷键-操作-设置
    Eclipse : Loading descriptor for ...错误解决
    ORA-00937: 不是单组分组函数
    An error has occurred,See error log for more details 错误解决办法
    [Error Code: 942, SQL State: 42000] ORA-00942: 表或视图不存在
    ORA-00001: 违反唯一约束条件
    eclipse 出现user operation is waiting
    [空格][空白][特殊]字符/文字
    powerdesigner16.5安装教程及破解步骤
    mybatis遇到日期类型数据时String到date的转化
  • 原文地址:https://www.cnblogs.com/sage-blog/p/4058244.html
Copyright © 2011-2022 走看看