Spinners(下拉列表)
Posted yh_android_blog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spinners(下拉列表)相关的知识,希望对你有一定的参考价值。
概述
下拉列表提供一个 从一组中选择一个的选项 的快速方法。在默认状态下,一个下拉列表展示了当前被选中的值。触摸该下拉列表就会显示一个落下的菜单,其中就包含所有其它的可选值,由用户选择一个新的值。 在你的布局中加入Spinner
对象来添加一个下拉列表。通常你会在你的xml 布局文件中添加一个
<Spinner>
元素。例如:
为了填充选择列表,你需要在你的activity 或 fragment 代码中定义一个<Spinner
android:id="@+id/planets_spinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
SpinnerAdapter。
填充下拉列表以供用户选择
choices 你提供的选项可以来自任何数据源 , must 但是必须经由SpinnerAdapter
, 提供,例如如果你的可选项在一个数组中,使用
ArrayAdapter,或者可选项是从数据库中获得的,使用
CursorAdapter
。
例如,如果下拉列表中的可选项已经预先确定了,你可以在string 资源文件夹中使用一个字符数组来提供他们:
有了一个这样的数组,你可以像下面代码一样在activity 或fragment 中通过 使用一个<?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) 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);
reateFromResource()
方法允许你从一个字符串数组中创建一个
ArrayAdapter
。该方法的第三个参数是布局资源,定义了选项的显示方式。
simple_spinner_item布局由平台提供,除非你定义了自己的
以上是关于Spinners(下拉列表)的主要内容,如果未能解决你的问题,请参考以下文章
去除input[type=number]最右边的spinners(默认加减符号)