基础UI组件-spinner
来源:互联网 发布:云购源码 编辑:程序博客网 时间:2024/06/05 16:13
Spinner提供了从一个数据集合中快速选择一项值的办法。默认情况下Spinner显示的是当前选择的值,点击Spinner会弹出一个包含所有可选值的dropdown菜单,从该菜单中可以为Spinner选择一个新值。
上图显示的是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); }}
结果是:
0 0
- 基础UI组件-spinner
- UI组件之Spinner
- Android UI 之Spinner组件
- #Android#UI组件之spinner
- Android UI基础之Spinner
- 【Android基础】Spinner组件使用
- Android初级之组件基础09-Spinner
- android基础UI组件
- Android基础UI组件
- jQuery UI基础----14jQuery UI Widgets-spinner(下拉框
- Android-UI组件- RadioButton、CheckBox、 Spinner和ListView
- UI组件详解2---- RadioGroup、RadioButton、CheckBox、ListView、Spinner
- 【Android之UI】Spinner
- android--UI--spinner
- Android--UI之Spinner
- Android--UI之Spinner
- Android UI设计:Spinner
- UI控件--Spinner
- Activiti工作流的初步学习
- 开发时 团队出现的严重问题 放在这儿警戒
- 第八天 有向路径检查
- AsyncTask的用法
- 设计模式六大原则: 狸猫换太子 -- 里氏替换原则
- 基础UI组件-spinner
- UVA - 12230 Crossing Rivers
- 死亡历险,Java做的安卓调用.net Webservice进行修改密码
- 面试机器学习、大数据岗位时遇到的各种问题
- C++实现二位数组加减法
- Leetcode no. 96
- 1052: 最大报销额
- greenplum创建外部表笔记-readable篇
- C# Async与Await的使用