目录
先放实现的结果图
activaty_main.xml源码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.example.a86189.threesz2.MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="请选择你的出生地"
android:layout_marginTop="20dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:orientation="horizontal">
<Spinner
android:id="@+id/province"
android:layout_width="130dp"
android:layout_height="70dp" />
<Spinner
android:id="@+id/city"
android:layout_width="130dp"
android:layout_height="70dp" />
<Spinner
android:id="@+id/county"
android:layout_width="130dp"
android:layout_height="70dp" />
</LinearLayout>
</LinearLayout>
strings.xml源码
<resources>
<string name="app_name">Spinner省市区</string>
<string-array name="province">
<item>陕西省</item>
<item>辽宁省</item>
<item>湖北省</item>
</string-array>
<string-array name="sx">
<item>延安市</item>
<item>商洛市</item>
<item>渭南市</item>
</string-array>
<string-array name="ln">
<item>沈阳市</item>
<item>大连市</item>
<item>锦州市</item>
</string-array>
<string-array name="hb">
<item>武汉市</item>
<item>宜昌市</item>
<item>黄冈市</item>
</string-array>
<string-array name="ya">
<item>宝塔区</item>
<item>吴起县</item>
<item>洛川县</item>
</string-array>
<string-array name="sl">
<item>商州区</item>
<item>商南县</item>
<item>丹凤县</item>
</string-array>
<string-array name="wn">
<item>临渭区</item>
<item>蒲城县</item>
<item>白水县</item>
</string-array>
<string-array name="sy">
<item>和平区</item>
<item>苏家屯区</item>
<item>康平县</item>
</string-array>
<string-array name="dl">
<item>中山区</item>
<item>旅顺口区</item>
<item>长海县</item>
</string-array>
<string-array name="jz">
<item>古塔区</item>
<item>太和区</item>
<item>义县</item>
</string-array>
<string-array name="wh">
<item>江岸区</item>
<item>武昌区</item>
<item>汉阳区</item>
</string-array>
<string-array name="yc">
<item>西陵区</item>
<item>点军区</item>
<item>兴山县</item>
</string-array>
<string-array name="hg">
<item>黄州区</item>
<item>团风县</item>
<item>红安县</item>
</string-array>
</resources>
MainActivity.java源码
package com.example.a86189.threesz2;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private Spinner spPro,spCity,spCounty;
private TextView tvInfo;
ArrayAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
spPro = (Spinner) findViewById(R.id.province);
spCity = (Spinner) findViewById(R.id.city);
spCounty = (Spinner) findViewById(R.id.county);
adapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.province, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spPro.setAdapter(adapter);
spPro.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> cityAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.sx, android.R.layout.simple_spinner_item);
spCity.setAdapter(cityAdapter);
if (pro.equals("陕西省")) {
cityAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.sx, android.R.layout.simple_spinner_item);
//cityAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spCity.setAdapter(cityAdapter);
spCity.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Spinner spinner = (Spinner) parent;
String cit = (String) spinner.getItemAtPosition(position);
ArrayAdapter<CharSequence> countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.ya, android.R.layout.simple_spinner_item);
if (cit.equals("延安市")) {
countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.ya,
android.R.layout.simple_spinner_item);
} else if (cit.equals("商洛市")) {
countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.sl,
android.R.layout.simple_spinner_item);
} else if (cit.equals("渭南市")) {
countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.wn,
android.R.layout.simple_spinner_item);
}
spCounty.setAdapter(countyAdapter);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
} else if (pro.equals("辽宁省")) {
cityAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.ln,
android.R.layout.simple_spinner_item);
cityAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spCity.setAdapter(cityAdapter);
spCity.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Spinner spinner = (Spinner) parent;
String cit = (String) spinner.getItemAtPosition(position);
ArrayAdapter<CharSequence> countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.sy,
android.R.layout.simple_spinner_item);
if (cit.equals("沈阳市")) {
countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.sy,
android.R.layout.simple_spinner_item);
} else if (cit.equals("大连市")) {
countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.dl,
android.R.layout.simple_spinner_item);
} else if (cit.equals("锦州市")) {
countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.jz,
android.R.layout.simple_spinner_item);
}
spCounty.setAdapter(countyAdapter);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
} else if (pro.equals("湖北省")) {
cityAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.hb,
android.R.layout.simple_spinner_item);
cityAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spCity.setAdapter(cityAdapter);
spCity.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Spinner spinner = (Spinner) parent;
String cit = (String) spinner.getItemAtPosition(position);
ArrayAdapter<CharSequence> countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.wh,
android.R.layout.simple_spinner_item);
if (cit.equals("延安市")) {
countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.wh,
android.R.layout.simple_spinner_item);
} else if (cit.equals("商洛市")) {
countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.yc,
android.R.layout.simple_spinner_item);
} else if (cit.equals("渭南市")) {
countyAdapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.hg,
android.R.layout.simple_spinner_item);
}
spCounty.setAdapter(countyAdapter);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
}
⭐⭐⭐持续更新.....
⭐⭐⭐每天提醒自己,自己就是个菜鸡!
⭐⭐⭐如果对您有帮助留下的每一个点赞、收藏、关注是对菜鸡创作的最大鼓励❀
⭐⭐⭐有相关问题可以写在评论区,一起学习,一起进步。