历经几天查阅更改终于把这个功能实现了,回想起来:用新技术实现想要的结果同时我们不能紧抓住一个问题不放。一个方法不行我们可以寻找其他方法,切不可一条路走到黑!
spinner:提供一种下拉列表选择的输入方式,可以节省有限的屏幕空间占用。实现他很简单,但是在两者之间建立联系时就需注意了。
这里首先“省”,第一级我们无需改动,将其放入适配器显示即可;第二级“市”,需要根据省来确定:
1)省份:
ArrayAdapter<CharSequence> _Adapter = ArrayAdapter.createFromResource(
this, R.array.spinnerprovince,
android.R.layout.simple_spinner_item);
_Adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
province.setAdapter(_Adapter);
2)根据省份显示城市:
// 点击省份对应城市数据绑定
province.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
Spinner spinner = (Spinner) parent;
String pro = (String) spinner.getItemAtPosition(position);
// 默认显示城市
ArrayAdapter<CharSequence> _BAdapter = ArrayAdapter
.createFromResource(MarketActivity.this,
R.array.cityofshandong,
android.R.layout.simple_spinner_item);
// 点击省市显示相应城市
if (pro.equals("山东省")) {
_BAdapter = ArrayAdapter.createFromResource(
MarketActivity.this, R.array.cityofshandong,
android.R.layout.simple_spinner_item);
} else if (pro.equals("山西省")) {
_BAdapter = ArrayAdapter.createFromResource(
MarketActivity.this, R.array.cityofshanxi,
android.R.layout.simple_spinner_item);
} else if (pro.equals("安徽省")) {
_BAdapter = ArrayAdapter.createFromResource(
MarketActivity.this, R.array.cityofanhui,
android.R.layout.simple_spinner_item);
}
_BAdapter
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
city.setAdapter(_BAdapter);
}
其中默认城市只需在array里设定即可(同上一篇array)。
这里是重要代码,希望可以帮到有些迷茫的同学。新手可以到我空间下载demo源代码,帮助学习(可运行、有注释)。
源代码下载地址:http://download.csdn.net/download/duyuping/6237573
分享到:
相关推荐
本示例主要讲解如何利用Spinner实现省市二级联动的功能,这是一个在许多应用中都需要用到的功能,如地址填写、定位服务等。下面将详细介绍这个过程。 首先,我们需要明白什么是二级联动。二级联动是指在一个选择框...
我是一个android新手,所以一切以简单起步。...如果您正在学习这个控件,需要实现基于这个控件的二级联动效果,不妨使用这个看看. 使用方法:用eclipse导入,假若报错,把平台改为android2.2,jdk1.6就可以了。
综上所述,实现"Spinner二级联动下拉菜单"涉及到了Android UI设计、数据适配、事件监听、数据加载、异步处理等多个方面,是Android开发中的一个综合实践。在实际开发中,应确保代码的可读性、可维护性,并考虑性能...
首先,我们来详细解释一下"省市二级spinner"的实现原理: 1. **数据结构**:通常,我们需要一个二维数据结构来存储省市区的数据,比如二维数组或列表。每一级(省、市)都是一个列表,列表中的每个元素包含该级别的...
本示例“spinner二级省市级联”是针对如何使用Spinner实现省市区三级联动的一个经典应用场景。在这个项目中,我们将会看到如何通过编程方式处理这种复杂的交互。 首先,Spinner的使用通常涉及到数据的加载和适配器...
在Android开发中,有时...总之,实现Android城市级联下拉框(自定义Spinner)需要对Spinner的基本使用、事件监听、数据更新以及界面定制有深入了解。通过不断实践和优化,我们可以创建出用户体验优秀的级联选择组件。
这个"Android版省市区三级级联"应该是一个实现中国省份、城市、区县选择功能的代码库或者组件,允许用户通过级联的方式进行选择,提供便捷的用户体验。下面将详细阐述这一知识点及其相关技术。 首先,我们要理解三...
5. **级联效果的扩展**:如果需要实现更复杂的级联,如第三级、第四级等,只需在前一级的监听事件中继续更新后续Spinner的数据即可。 总结来说,Android中实现Spinner的级联效果主要涉及以下几个步骤: - 准备各...
本篇文章将详细介绍如何使用Spinner来实现下拉列表,以及如何自定义其样式。 首先,我们来了解Spinner的基本用法。在XML布局文件中,可以添加一个Spinner元素: ```xml <Spinner android:id="@+id/spinner" ...
在“android spinner 省份市二级联动”这个场景中,我们通常需要实现一个功能,即当用户在第一个Spinner(省份)中选择一个特定的省份时,第二个Spinner(城市)会自动更新为对应省份的城市列表。这种联动效果在很多...
在本文中,我们将深入探讨如何使用Spinner实现城市级联下拉框,这是一个在实际应用中常见的需求,例如在地址选择或设置中。 首先,我们需要理解Spinner的基本结构。在提供的`activity_main.xml`布局文件中,可以...
总之,实现省市区三级联动效果,关键在于使用Spinner结合自定义Adapter,通过监听用户的选择并动态更新数据来达到联动的目的。这是一个典型的Android UI编程问题,对理解和掌握Android数据绑定、事件处理和UI设计有...
- Spinner级联:通过监听Spinner的选中事件,根据用户选择更新下一个Spinner的数据源,实现级联效果。 5. MySQL数据源: - 远程数据同步:虽然SQLite主要用于本地数据存储,但也可以通过网络请求同步MySQL数据库...
在Android开发中,实现区域级联选择效果,通常是指创建一个类似于下拉菜单的效果,其中一项选择会引发下一级别的选项出现,这种交互设计被称为级联菜单或联动菜单。这样的功能常见于地理位置选择,例如省份-城市-...
以上就是关于Spinner二级联动的实现方法,以及如何自定义Spinner的样式。通过这种方式,你可以创建出更加符合应用需求的交互界面。希望这个示例能够帮助到你和其他开发者,如果有任何问题或者心得,欢迎进行交流讨论...
Spinner控件在Android中广泛用于实现有限选项的选择,通常与Adapter配合使用,将数据绑定到视图上。 在Android中,实现省市级联的基本步骤如下: 1. **创建数据结构**: 首先,你需要创建一个表示省份的数据数组...
- 在实现二级联动时,首先需要设计一个合适的数据结构来存储省市区数据。通常,我们可以使用树形结构或者两级列表来表示。每个省对应一个节点,节点下包含若干个城市节点。 - 数据可以来源于网络API,也可以预先...
开发者可以通过阅读和分析这些代码,学习如何实现省市区三级联动的Spinner。 在实际开发中,考虑到性能和用户体验,你可能还需要考虑异步加载数据、缓存策略、错误处理等细节。同时,对于大量数据,可能需要使用...
### Android Spinner+SQLite 三级联动实现详解 #### 一、概览 在Android开发中,经常会遇到需要展示层级数据的情况,比如省份-城市-区县的选择等。这种情况下,使用Spinner(下拉列表框)结合SQLite数据库进行三级...