1. 首先非常感谢鸿洋,大神是CSDN上我非常敬仰开发工程师。我是在大神提供的demo基础上稍稍改动一下就达到我自己想要的效果
2. 我的省市区实现的是能够动态修改自定义控件的数据,非常简单就是你需要什么信息传递什么信息,数据就能改动,直接拷贝到自己的项目中就能用
3. 部分关键代码,完整的代码自行下载使用
1) 解析json数据
private void initJsonData1() {
try {
StringBuffer sb = new StringBuffer();
InputStream is = getAssets().open("area.json");
int len = -1;
byte[] buf = new byte[1024];
while ((len = is.read(buf)) != -1) {
sb.append(new String(buf, 0, len, "utf-8"));
}
is.close();
mJsonObj1 = new JSONArray(sb.toString());
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
}
2) 加载解析的省市区数据
private void initJson() {
try {
for (int i = 0; i < mJsonObj1.length(); i++) {
JSONObject jsonP = mJsonObj1.getJSONObject(i);// 每个省的json对象
String province = jsonP.getString("name");
String cityList = jsonP.getString("cityList");
// Log.i("province", province);
provinceshuzu.add(province);
array1 = (String[]) provinceshuzu.toArray(new String[provinc