Android Spinner

1. Spinner

Spinner是下拉列表,如图3-14所示,通常用于为用户提供选择输入。Spinner有一个重要的属性:spinnerMode,它有2种情况:

  1. 属性值为dropdown时,表示Spinner的数据下拉展示,如图1(a)所示.
  2. 属性值为dialog时,表示Spinner的数据为弹窗展示,如图1(b)所示。

spinnerMode的默认值为dropdown,即下拉展示。

图1 Spinner效果图

Spinner展示的数据可以分为静态数据和动态数据2种,静态数据可以以<string-array>元素的形式存放在string.xml,示例代码如下:

<resources>
    <string name="app_name">SpinnerTest</string>
    <string-array name="spinner_list">
        <item>请选择</item>
        <item>Android</item>
        <item>Java</item>
        <item>Python</item>
        <item>单片机</item>
        <item>嵌入式系统</item>
    </string-array>
</resources>

动态数据可以以List的方式存放,可以来着数据库或网络接口。

不管是静态数据还是动态数据,都需要通过适配器Adapter将数据与Spinner控件适配起来才可以在界面上显示。简言之,适配器Adapter就是数据和控件之间的桥梁纽带。由于Spinner数据一般为字符串数组,因此一般使用ArrayAdapter作为Spinner的适配器。

Spinner还有几个重要的方法,见表1。

表1 Spinner的常用方法

方法名

作用

void setDropDownViewResource(@LayoutRes int resource)

设置下拉列表中选项的显示效果布局

void setAdapter(SpinnerAdapter adapter)

设置Spinner的数据适配器

void setSelection(int position)

设置被选中item的postion

void setOnItemSelectedListener(OnItemSelectedListener listener)

设置被选中后的监听事件

Object getSelectedItem()

获取被选中的item

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-14 10:46:04       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-14 10:46:04       71 阅读
  3. 在Django里面运行非项目文件

    2024-07-14 10:46:04       58 阅读
  4. Python语言-面向对象

    2024-07-14 10:46:04       69 阅读

热门阅读

  1. not enough information C#

    2024-07-14 10:46:04       22 阅读
  2. python 网络爬虫

    2024-07-14 10:46:04       24 阅读
  3. Writing Bazel rules: simple binary rule

    2024-07-14 10:46:04       18 阅读
  4. UVA12342 Tax Calculator 题解

    2024-07-14 10:46:04       23 阅读
  5. Font Awesome 图表图标

    2024-07-14 10:46:04       26 阅读
  6. c++课后作业

    2024-07-14 10:46:04       23 阅读
  7. k8s开启deopos功能报错总结

    2024-07-14 10:46:04       24 阅读