- 浏览: 418176 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
rkikbs:
有下载地址么?
我的iOS视频开放了,欢迎大家在线观看 -
wjpiao:
支持支持!
我的iOS视频开放了,欢迎大家在线观看 -
关东升:
wwwang89 写道关老师,你好 ,请问:我的服务器端是用j ...
iOS网络编程-ASIHTTPRequest框架同步请求 -
wwwang89:
关老师,你好 ,请问:我的服务器端是用java写的,不是.ne ...
iOS网络编程-ASIHTTPRequest框架同步请求 -
关东升:
crowning_2008 写道关老师 好!你好
iOS开发那些事-关于性能优化–选择nib还是故事板的讨论
Spinner控件也是一种列表类型的控件,它的继承关系如下:
java.lang.Object
↳ android.view.View
↳ android.view.ViewGroup
↳ android.widget.AdapterView<T extends android.widget.Adapter>
↳ android.widget.AbsSpinner
↳ android.widget.Spinner
android.widget.Spinner继承了android.view.ViewGroup类。下面安排一个案例如图6-5,有两个Spinner,颜色选择Spinner和星座选择Spinner。点击颜色选择Spinner右边的 按钮,如图6-6所示,弹出单选对话框。
图6-5 Spinner控件 图6-6 颜色选择Spinner
点击星座选择Spinner右边的 按钮,如图6-7所示,弹出列表对话框。
图6-7 星座选择Spinner
程序代码请参考代码清单6-3:
【代码清单6-3】 chapter6_2/src/com/work/SpinnerActivity.java
第一个颜色选择Spinner数据来源于Values文件夹内的arrays.xml文件,
通过下面的方法从一个资源XML文件中加载数据,创建一个数组类的适配器对象,布局文件是使用系统提供的layout.simple_spinner_item,这里布局文件设置的是Spinner布局样式。
final ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.colors, android.R.layout.simple_spinner_item);
而弹出的下拉列表的样式是由Spinner的适配器的setDropDownViewResource()方法设置的。
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
第二个Spinner用于星座选择,数据是用数组存储的。这两个Spinner的setOnItemSelectedListener()方法的事件处理如下:
其中的onItemSelected(AdapterView<?> parent, View view, int position, long id)方法是选中选择项目时触发的,其中的position选择项目的位置,id是选择项目的编号。而什么都不选的方法是onNothingSelected(AdapterView<?> parent)。
出自《Android开发案例驱动教程》第六章
java.lang.Object
↳ android.view.View
↳ android.view.ViewGroup
↳ android.widget.AdapterView<T extends android.widget.Adapter>
↳ android.widget.AbsSpinner
↳ android.widget.Spinner
android.widget.Spinner继承了android.view.ViewGroup类。下面安排一个案例如图6-5,有两个Spinner,颜色选择Spinner和星座选择Spinner。点击颜色选择Spinner右边的 按钮,如图6-6所示,弹出单选对话框。
图6-5 Spinner控件 图6-6 颜色选择Spinner
点击星座选择Spinner右边的 按钮,如图6-7所示,弹出列表对话框。
图6-7 星座选择Spinner
程序代码请参考代码清单6-3:
【代码清单6-3】 chapter6_2/src/com/work/SpinnerActivity.java
public class SpinnerActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); final TextView txt2 = (TextView) findViewById(R.id.TextView02); Spinner s1 = (Spinner) findViewById(R.id.Spinner01); final ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource( this, R.array.colors, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); s1.setAdapter(adapter); s1.setOnItemSelectedListener( new OnItemSelectedListener() { public void onItemSelected( AdapterView<?> parent, View view, int position, long id) { txt2.setText(adapter.getItem(position).toString()); } public void onNothingSelected(AdapterView<?> parent) { txt2.setText("没选中的"); } }); final TextView txt4 = (TextView) findViewById(R.id.TextView04); Spinner s2 = (Spinner) findViewById(R.id.Spinner02); ArrayAdapter<CharSequence> adapterC = new ArrayAdapter<CharSequence>(this, android.R.layout.simple_spinner_item, CONSTELLATIONS); adapterC.setDropDownViewResource(android.R.layout.simple_spinner_item); s2.setAdapter(adapterC); s2.setOnItemSelectedListener( new OnItemSelectedListener() { public void onItemSelected( AdapterView<?> parent, View view, int position, long id) { txt4.setText(CONSTELLATIONS[position]); } public void onNothingSelected(AdapterView<?> parent) { txt4.setText("没选中的"); } }); } static final String[] CONSTELLATIONS = new String[] { "白羊座", "金牛座", "双子座", "巨蟹座", "狮子座", "处女座", "天枰座", "天蝎座", "射手座", "魔蝎座", "水瓶座", "双鱼座" }; }
第一个颜色选择Spinner数据来源于Values文件夹内的arrays.xml文件,
<?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="colors"> <item>红色</item> <item>橙色</item> <item>黄色</item> <item>绿色</item> <item>蓝色</item> <item>紫色</item> </string-array> </resources>
通过下面的方法从一个资源XML文件中加载数据,创建一个数组类的适配器对象,布局文件是使用系统提供的layout.simple_spinner_item,这里布局文件设置的是Spinner布局样式。
final ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.colors, android.R.layout.simple_spinner_item);
而弹出的下拉列表的样式是由Spinner的适配器的setDropDownViewResource()方法设置的。
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
第二个Spinner用于星座选择,数据是用数组存储的。这两个Spinner的setOnItemSelectedListener()方法的事件处理如下:
s1.setOnItemSelectedListener( new OnItemSelectedListener() { public void onItemSelected( AdapterView<?> parent, View view, int position, long id) { txt2.setText(adapter.getItem(position).toString()); } public void onNothingSelected(AdapterView<?> parent) { txt2.setText("没选中的"); } });
其中的onItemSelected(AdapterView<?> parent, View view, int position, long id)方法是选中选择项目时触发的,其中的position选择项目的位置,id是选择项目的编号。而什么都不选的方法是onNothingSelected(AdapterView<?> parent)。
出自《Android开发案例驱动教程》第六章
发表评论
-
智捷课堂改版啦!
2015-08-04 12:09 1新站上线,为庆祝网站改版,全站所有视频限时免费三天(8月5日 ... -
《Android开发案例驱动教程》之十五章云端应用整篇下载
2011-12-08 18:08 1139《Android开发案例驱动教程》15章--云端应用[colo ... -
《Android开发案例驱动教程》源码
2011-12-08 17:57 1309《Android开发案例驱动教程》15,16,17章源码 目 ... -
android中google“定位查询”
2011-08-03 15:18 1219“定位查询”locate()方法,增加一个线程,在该线程中处理 ... -
7.1.5 选项卡结合案例详解
2011-07-27 08:58 1476选项卡是通过TabHost和TabActivity一起实现的, ... -
7.1.4 ScrollView结合案例详解
2011-07-26 17:50 2131ScrollView是一个滚动条控件,当屏幕中内容很多时候需要 ... -
7.1.3 TimePicker结合案例详解
2011-07-25 17:06 3219TimePicker是Android的时间设置控件。TimeP ... -
7.1.2 DatePicker结合案例详解
2011-07-23 15:56 1626DatePicker是Android的日期设置控件。DateP ... -
7.1.1 ImageSwitcher案例分析详解
2011-07-21 10:50 2164ImageSwitcher图像切换器,可以切换器图像。Imag ... -
7.5 TableLayout布局详解
2011-07-20 10:17 2034TableLayout表格布局,将子元素的位置分配到行或列中。 ... -
7.4 AbsoluteLayout布局详解
2011-07-19 16:35 4588AbsoluteLayout绝对布局,指定了子元素准确的x/y ... -
7.3 RelativeLayout布局详解
2011-07-19 14:11 1049RelativeLayout相对布局, 允许子元素指定他们相对 ... -
7.2 LinearLayout布局详解
2011-07-18 10:23 1060LinearLayout线性布局,线性布局是所有布局中最常用的 ... -
6.4 Android国际化和本地化
2011-07-14 15:37 1599何谓国际化和本地化呢?就是在资源文件夹res内建立不同国家语言 ... -
6.1.6 Gallery结合案例详解
2011-07-13 17:04 1492Gallery(相册)控件是个很不错的图片查看控件,屏幕中有一 ... -
6.1.5 GridView详解
2011-07-13 09:25 1727Android中的数据能够通过GridView类实现表格化展现 ... -
6.2 Toast 详解
2011-07-12 17:02 896Toast用于向用户显示一些帮助或提示,有三种展现形式: • ... -
ListView分页(带图片)显示用法案例
2011-07-11 17:01 3142ListView是Android中最为常用的列表类型控件,Li ... -
Android多媒体--网络文件播放
2011-07-08 15:22 1795网络文件就是指放在网络上的文件,也可能是流媒体等网络资源。由于 ... -
android多媒体开发--本地音频文件播放
2011-07-08 15:20 5944本地文件就是指文件放在Android系统的外部存储设 ...
相关推荐
本篇文章将详细讲解如何在Android应用中使用Spinner,并结合具体的"android spinner使用案例"来深入理解其工作原理和用法。 ### 1. Spinner的基本概念 Spinner是Android SDK中的一个视图组件,属于`android.widget...
让我们深入探讨这两个控件的使用方法以及如何将它们结合到一个案例中。 **ListView** ListView是Android中的一个视图容器,它能够有效地显示一列或多列可滚动的数据。ListView通常与Adapter一起使用,Adapter的...
这个"Spinner案例"提供了关于如何在Android应用中有效使用Spinner的示例代码和实践指导。 在Android开发中,Spinner的使用涉及到以下几个关键知识点: 1. **Spinner的基本结构**:Spinner由两部分组成,一部分是...
在本案例中,我们将深入探讨Spinner的使用方法,包括如何创建、设置数据源、监听用户选择以及自定义样式。 首先,Spinner的创建通常在布局XML文件中完成。在`res/layout`目录下,打开或创建一个XML布局文件,添加...
下面我们将深入探讨Spinner的基本使用、功能以及如何在实际开发中实现"Spinner选择下拉框小例子"。 1. **Spinner的基本结构** Spinner组件本质上是一个TextView,但它可以展开为一个下拉列表。在XML布局文件中,...
在Android开发中,ListView和Spinner是两种非常常用的UI组件,它们在数据展示和用户交互方面起着关键作用...在Sqlite3、Spinner1和View1这些文件中,你可能会找到更具体的示例代码,帮助你进一步掌握这两个组件的使用。
"spinnerDome"项目可能是开发者分享的一个关于Spinner使用的示例工程,其中可能包含了多种Spinner的使用方法和效果展示,如自定义布局、动态加载数据等。如果你正在寻找Spinner的实践案例,这个项目将是一个很好的...
总结起来,这个“Spinner显示城市信息”的案例涉及了Android的UI组件使用、数据适配、事件监听以及数据加载策略等多个知识点,是Android开发中常见的功能实现。通过这种方式,我们可以为用户提供直观且交互性强的...
通过以上介绍,我们可以看到“三级联动 Spinner”不仅涉及到Spinner的基本使用,还包括了数据结构设计、事件监听、Adapter的定制以及用户体验的考虑等多个方面,是Android开发中一个实用且复杂的实践案例。
对于简单的静态数据,可以使用`ArrayAdapter`,但在这个案例中,因为需要二级联动,我们需要自定义`BaseAdapter`,以便在省份选择变化时更新城市列表。 3. **事件监听**: 使用`OnItemSelectedListener`监听...
- 示例代码:可能包含了一个完整的Spinner使用案例,包括布局XML、适配器类和活动类。 - 自定义布局文件:如果Spinner显示的样式特殊,可能会有一个或多个自定义布局文件(`.xml`)用于定制每个列表项的视图。 - ...
本文将深入探讨jQuery Spinner的核心概念、使用方法及其实现原理。 一、jQuery Spinner简介 jQuery Spinner是由jQuery UI库提供的一款组件,它提供了一个美观且易用的数字输入框,支持加减操作以及自定义步进值、...
为了提高性能,可以使用convertView在Adapter的`getDropDownView()`方法中复用已创建的视图,避免频繁创建新的视图对象。 10. 测试与调试: 对于这样的功能,测试是必不可少的,需要覆盖各种场景,如不同层级数据...
在这个案例中,可能会使用ArrayAdapter来绑定省市区的数据,或者如果数据来自数据库,则可能使用CursorAdapter。 3. **数据结构设计**:为了实现联动效果,我们需要设计合适的数据结构来存储省市区的数据。一种常见...
通过以上分析,我们可以看出这个项目是对Android原生Spinner组件进行深度定制的一个实践案例,旨在提供类似腾讯QQ登录界面的用户体验。开发者需要具备扎实的Android基础知识,对Spinner的工作原理有深入理解,并且...
在这个案例中,自定义Adapter需要继承`ArrayAdapter`,并重写`getView()`方法,以便为每个条目设置文本和图片。 4. **getView()方法** 在`getView()`方法中,首先需要获取到ListView项的布局,然后通过`...
1. **Spinner的基本使用**:Spinner通常由两部分组成:静态显示部分(默认显示一个选项)和动态下拉菜单(展示所有选项)。在Android中,我们可以通过`Spinner`类创建Spinner,并使用`ArrayAdapter`或`CursorAdapter...
1. **Spinner的基本使用**:首先,我们需要理解Spinner的基本用法,包括在XML布局文件中添加Spinner元素,设置适配器(Adapter)以填充数据,以及监听用户的选择事件。 2. **自定义Adapter**:为了实现图文混排,你...
(1)两种方法提冲Spinner中的数据源:通过list集合,或者是通过xml文件进行配置 (2)布局代码如下: <RelativeLayout xmlns:android=http://schemas.android.com/apk/res/android xmlns:tools=...