package cc.lifelink.cn;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.Toast;
public class City_cnActivity extends Activity {
/** Called when the activity is first created. */
private DBManager dbm;
private SQLiteDatabase db;
private Spinner spinner1 = null;
private Spinner spinner2=null;
private Spinner spinner3=null;
private String province=null;
private String city=null;
private String district=null;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
spinner1=(Spinner)findViewById(R.id.spinner1);
spinner2=(Spinner)findViewById(R.id.spinner2);
spinner3=(Spinner)findViewById(R.id.spinner3);
spinner1.setPrompt("省");
spinner2.setPrompt("城市");
spinner3.setPrompt("地区");
initSpinner1();
}
public void initSpinner1(){
dbm = new DBManager(this);
dbm.openDatabase();
db = dbm.getDatabase();
List<MyListItem> list = new ArrayList<MyListItem>();
try {
String sql = "select * from province";
Cursor cursor = db.rawQuery(sql,null);
cursor.moveToFirst();
while (!cursor.isLast()){
String code=cursor.getString(cursor.getColumnIndex("code"));
byte bytes[]=cursor.getBlob(2);
String name=new String(bytes,"gbk");
MyListItem myListItem=new MyListItem();
myListItem.setName(name);
myListItem.setPcode(code);
list.add(myListItem);
cursor.moveToNext();
}
String code=cursor.getString(cursor.getColumnIndex("code"));
byte bytes[]=cursor.getBlob(2);
String name=new String(bytes,"gbk");
MyListItem myListItem=new MyListItem();
myListItem.setName(name);
myListItem.setPcode(code);
list.add(myListItem);
} catch (Exception e) {
}
dbm.closeDatabase();
db.close();
MyAdapter myAdapter = new MyAdapter(this,list);
spinner1.setAdapter(myAdapter);
spinner1.setOnItemSelectedListener(new SpinnerOnSelectedListener1());
}
public void initSpinner2(String pcode){
dbm = new DBManager(this);
dbm.openDatabase();
db = dbm.getDatabase();
List<MyListItem> list = new ArrayList<MyListItem>();
try {
String sql = "select * from city where pcode='"+pcode+"'";
Cursor cursor = db.rawQuery(sql,null);
cursor.moveToFirst();
while (!cursor.isLast()){
String code=cursor.getString(cursor.getColumnIndex("code"));
byte bytes[]=cursor.getBlob(2);
String name=new String(bytes,"gbk");
MyListItem myListItem=new MyListItem();
myListItem.setName(name);
myListItem.setPcode(code);
list.add(myListItem);
cursor.moveToNext();
}
String code=cursor.getString(cursor.getColumnIndex("code"));
byte bytes[]=cursor.getBlob(2);
String name=new String(bytes,"gbk");
MyListItem myListItem=new MyListItem();
myListItem.setName(name);
myListItem.setPcode(code);
list.add(myListItem);
} catch (Exception e) {
}
dbm.closeDatabase();
db.close();
MyAdapter myAdapter = new MyAdapter(this,list);
spinner2.setAdapter(myAdapter);
spinner2.setOnItemSelectedListener(new SpinnerOnSelectedListener2());
}
public void initSpinner3(String pcode){
dbm = new DBManager(this);
dbm.openDatabase();
db = dbm.getDatabase();
List<MyListItem> list = new ArrayList<MyListItem>();
try {
String sql = "select * from district where pcode='"+pcode+"'";
Cursor cursor = db.rawQuery(sql,null);
cursor.moveToFirst();
while (!cursor.isLast()){
String code=cursor.getString(cursor.getColumnIndex("code"));
byte bytes[]=cursor.getBlob(2);
String name=new String(bytes,"gbk");
MyListItem myListItem=new MyListItem();
myListItem.setName(name);
myListItem.setPcode(code);
list.add(myListItem);
cursor.moveToNext();
}
String code=cursor.getString(cursor.getColumnIndex("code"));
byte bytes[]=cursor.getBlob(2);
String name=new String(bytes,"gbk");
MyListItem myListItem=new MyListItem();
myListItem.setName(name);
myListItem.setPcode(code);
list.add(myListItem);
} catch (Exception e) {
}
dbm.closeDatabase();
db.close();
MyAdapter myAdapter = new MyAdapter(this,list);
spinner3.setAdapter(myAdapter);
spinner3.setOnItemSelectedListener(new SpinnerOnSelectedListener3());
}
class SpinnerOnSelectedListener1 implements OnItemSelectedListener{
public void onItemSelected(AdapterView<?> adapterView, View view, int position,
long id) {
province=((MyListItem) adapterView.getItemAtPosition(position)).getName();
String pcode =((MyListItem) adapterView.getItemAtPosition(position)).getPcode();
initSpinner2(pcode);
initSpinner3(pcode);
}
public void onNothingSelected(AdapterView<?> adapterView) {
// TODO Auto-generated method stub
}
}
class SpinnerOnSelectedListener2 implements OnItemSelectedListener{
public void onItemSelected(AdapterView<?> adapterView, View view, int position,
long id) {
city=((MyListItem) adapterView.getItemAtPosition(position)).getName();
String pcode =((MyListItem) adapterView.getItemAtPosition(position)).getPcode();
initSpinner3(pcode);
}
public void onNothingSelected(AdapterView<?> adapterView) {
// TODO Auto-generated method stub
}
}
class SpinnerOnSelectedListener3 implements OnItemSelectedListener{
public void onItemSelected(AdapterView<?> adapterView, View view, int position,
long id) {
district=((MyListItem) adapterView.getItemAtPosition(position)).getName();
Toast.makeText(City_cnActivity.this, province+" "+city+" "+district, Toast.LENGTH_LONG).show();
}
public void onNothingSelected(AdapterView<?> adapterView) {
// TODO Auto-generated method stub
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
Android版(三级联动)全国省市县下拉地址选择源码
共39个文件
class:15个
png:6个
java:5个
5星 · 超过95%的资源 需积分: 50 228 下载量 114 浏览量
2014-03-28
16:35:59
上传
评论 1
收藏 191KB ZIP 举报
温馨提示
Android版(三级联动)全国省市县下拉地址选择源码,提供给大家学习下。
资源推荐
资源详情
资源评论
收起资源包目录
android(三级联动)全国省市县下拉地址选择源码.zip (39个子文件)
city_cn
AndroidManifest.xml 733B
res
layout
item.xml 514B
main.xml 685B
raw
city.s3db 105KB
drawable-ldpi
ic_launcher.png 2KB
drawable-mdpi
ic_launcher.png 3KB
drawable-hdpi
ic_launcher.png 4KB
values
strings.xml 180B
proguard.cfg 1KB
src
cc
lifelink
cn
MyAdapter.java 2KB
MyListItem.java 322B
DBManager.java 3KB
City_cnActivity.java 6KB
bin
classes
cc
lifelink
cn
City_cnActivity$SpinnerOnSelectedListener1.class 2KB
City_cnActivity.class 6KB
DBManager.class 3KB
MyAdapter$MyAdapterView.class 2KB
MyAdapter.class 2KB
R.class 543B
R$layout.class 410B
R$attr.class 328B
City_cnActivity$SpinnerOnSelectedListener3.class 2KB
R$id.class 511B
R$string.class 415B
MyListItem.class 720B
R$drawable.class 395B
City_cnActivity$SpinnerOnSelectedListener2.class 2KB
R$raw.class 373B
res
drawable-ldpi
ic_launcher.png 2KB
drawable-mdpi
ic_launcher.png 2KB
drawable-hdpi
ic_launcher.png 4KB
classes.dex 12KB
city_cn.apk 56KB
resources.ap_ 49KB
.classpath 364B
assets
project.properties 360B
.settings
org.eclipse.core.resources.prefs 88B
.project 843B
gen
cc
lifelink
cn
R.java 1KB
共 39 条
- 1
小枫_S
- 粉丝: 3911
- 资源: 15
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
前往页