Spinner

简介: 在这里给大家分享一个Android UI控件Spinner,下拉选择框,我是这么理解的,能力有限,写的不对的地方还请多多指教,不喜勿喷哦,kensoon918@163.com only for feedback

一.概述

在这里给大家分享一个Android UI控件Spinner,下拉选择框,我是这么理解的,能力有限,写的不对的地方还请多多指教,不喜勿喷哦,kensoon918@163.com only for feedback

二.Spinner 简介

Google官方文档是这样介绍Spinner的,Spinner提供了更快速的方法,让你在一个集合里面选择一个值。Spinner只显示一个值,当你触摸它的时候其他可以选择的值将以下拉列表的形式展示出来,你可以选择任意一个下拉列表展示出来的值。

附上图片:
QQ_20160430105124

三.添加 Spinner

像其他Anroid View一样,你有两种添加方式。一种就是在Xml文件里面添加,另一种就是通过代码动态添加。

Xml 里面添加Spinner


>在`Xml` 中`Spinner` 其他属性:

>dropDown水平偏移量: `android:dropDownHorizontalOffset`
dropDown垂直偏移量: `android:dropDownVerticalOffset`
dropDownSelector:`android:dropDownSelector`
dropDown背景 : `android:popupBackground` 
dropDown宽度:`android:dropDownWidth`
spinnerMode: `android:spinnerMode`
gravity:`android:gravity`
prompt : `android:prompt`

>可以通过如下的构造函数动态添加`Spinner`:

>`Spinner(Context context)`
`Spinner(Context context, int mode)`
`Spinner(Context context, AttributeSet attrs)`
`Spinner(Context context, AttributeSet attrs, int defStyleAttr)`
`Spinner(Context context, AttributeSet attrs, int defStyleAttr, int mode)`
`Spinner(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes, int mode)`
`Spinner(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes, int mode, Resources.Theme popupTheme)`

#三. 给`Spinner` 添加 `Adapter`
>添加完`Spinner`过后,你需要给`Spinner`添加一个`SpinnerAdapter`,Google文档介绍的`SpinnerAdapter`直接子类有:

>`ArrayAdapter<T>`
`BaseAdapter, CursorAdapter`
`ResourceCursorAdapter`
`SimpleAdapter`
`SimpleCursorAdapter`
`ThemedSpinnerAdapter`

>你只需要创建上面任意一个,然后添加给`Spinner`,例如:

>```java
       //找到 Spinner
        Spinner spinner = (Spinner) findViewById(R.id.planets_spinner);
        //items 数组
        String[] arrays = new String[]{
                "item1",
                "item2",
                "item3"
        };
        //ArrayAdapter 适配器
        ArrayAdapter<String> mAdapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_spinner_dropdown_item, arrays);
        //给Spinner 设置适配器
        spinner.setAdapter(mAdapter);

四. 给Spinner 设置监听器

最后一步当然是给Spinner设置监听器了,设置监听器的方法有很多,这里只给大家演示一种,如下:


#五. 总结
> 总的来说`Spinner `是个不错的View,给本来就小的手机屏幕节约了不少的空间,这的推荐。如果要获得选中的值何以使用 

mSpinner.getSelectedItem().toString();

目录
相关文章
|
Android开发
Android中的高级控件Spinner
Android中的高级控件Spinner
103 0
|
Android开发 数据格式 XML