[置顶] 基础UI组件-spinner
2016-08-11 23:57
597 查看
Spinner提供了从一个数据集合中快速选择一项值的办法。默认情况下Spinner显示的是当前选择的值,点击Spinner会弹出一个包含所有可选值的dropdown菜单,从该菜单中可以为Spinner选择一个新值。
上图显示的是Spinner常见的样式。这篇文章中我将讨论1.Spinner的基本用法
1.在布局文件中添加Spinner控件
其中android:entries=”@array/city”表示Spinner的数据集合是从资源数组languages中获取的,city数组资源定义在values/strings.xml中:
如果你不需要对Spinner的选择事件做响应,那么一个完整的Spinner使用流程就结束了。
运行结果:
2.设置Spinner的Adapter
上面使用Spinner数据源于xml数组,其实用的最多的还是通过adapter来跟Spinner绑定数据。
使用ArrayAdapter
2.1
结果是:
2.2
结果是:
上图显示的是Spinner常见的样式。这篇文章中我将讨论1.Spinner的基本用法
1.在布局文件中添加Spinner控件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <Spinner android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/spinner_city" android:entries="@array/city"/> </LinearLayout>
其中android:entries=”@array/city”表示Spinner的数据集合是从资源数组languages中获取的,city数组资源定义在values/strings.xml中:
<resources> <string name="app_name">SwitchTheme</string> <array name="city"> <item>北京</item> <item>上海</item> <item>天津</item> <item>大连</item> <item>广州</item> <item>郑州</item> </array> </resources>
package com.example.by.switchtheme; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.widget.ArrayAdapter; import android.widget.Spinner; public class MainActivity extends ActionBarActivity { private Spinner spinnerroles; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }
如果你不需要对Spinner的选择事件做响应,那么一个完整的Spinner使用流程就结束了。
运行结果:
2.设置Spinner的Adapter
上面使用Spinner数据源于xml数组,其实用的最多的还是通过adapter来跟Spinner绑定数据。
使用ArrayAdapter
2.1
package com.example.by.switchtheme; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.widget.ArrayAdapter; import android.widget.Spinner; public class MainActivity extends ActionBarActivity { private Spinner spinnerroles; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); spinnerroles= (Spinner) findViewById(R.id.spinner2_role); String []roles={"管理员","会员","游客"}; //方式1适配器(上下文,下拉列表里的布局,显示下拉选项的组件的ID,数据) ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,android.R.id.text1,roles); spinnerroles.setAdapter(adapter); } }
结果是:
2.2
package com.example.by.switchtheme; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.widget.ArrayAdapter; import android.widget.Spinner; public class MainActivity extends ActionBarActivity { private Spinner spinnerroles; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); spinnerroles= (Spinner) findViewById(R.id.spinner2_role); String []roles={"管理员","会员","游客"}; //方式2 ArrayAdapter adapter1=ArrayAdapter.createFromResource(this,R.array.city,android.R.layout.simple_spinner_dropdown_item); adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinnerroles.setAdapter(adapter1); } }
结果是:
相关文章推荐
- js玩具——UI组件:EventListener 事件监听器基础接口
- Android基础教程(九)之自定义下拉菜单模式----Spinner与setDropDownViewResource的应用
- [置顶] Android 入门基础(9) ---SharedPreferences
- [置顶] JQuery基础知识
- [置顶] jBPM4工作流开发实战 之 第一部分 工作流基础
- [置顶] jQuery 插件开发基础
- [置顶] android 入门基础(10) ------ intent加载手机磁盘的图片文件
- Android基础-下拉列表控件Spinner
- android基础学习(7)-------spinner的使用
- Android基础教程(九)之自定义下拉菜单模式----Spinner与setDropDownViewResource的应用
- 【android基础学习之四】——基础控件CheckBox,Spinner,AutoCompleteTextView,DatePicker,TimePicker
- [置顶]《与Java相恋》(初级篇)四-Java面向对象编程基础(一)
- [置顶] Android 入门基础(8) ---DatePickerDialog
- Android-UI组件- RadioButton、CheckBox、 Spinner和ListView
- Android开发基础:自定义下拉列表样式(spinner的用法)
- [置顶]Emacs for vi Users | Emacs 和 Vim 基础键对应 ----<编辑器文本操作,搜索/替换/正则操作>
- Android初级之组件基础09-Spinner
- [置顶] android 入门基础(11) ---编程体会
- [置顶] jQuery基础学习(二)
- [置顶] 安卓UI组件之ListView详解