Skip to content

样式三(省市区三级列表)

crazyandcoder edited this page Apr 19, 2018 · 6 revisions

详细使用方法可以参考demo

0、预先加载数据

在自定义的Application中或者Activity中添加以下的代码,预先加载本地城市数据

public class MyApp extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        /**
         * 预先加载三级列表显示省市区的数据
         */
        CityListLoader.getInstance().loadProData(this);   
    }
}

1、跳转到省份列表

//跳转到省份列表
 Intent intent = new Intent(this, ProvinceActivity.class);
 startActivityForResult(intent, ProvinceActivity.RESULT_DATA);
        

2、添加结果返回

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == ProvinceActivity.RESULT_DATA) {
            if (resultCode == RESULT_OK) {
                if (data == null) {
                    return;
                }
                //省份结果
                 CityBean province = data.getParcelableExtra("province");
                 //城市结果
                 CityBean city = data.getParcelableExtra("city");
                 //区域结果
                 CityBean area = data.getParcelableExtra("area");      
            }
        }
    }

3、数据结构

//城市id
private String id; 

//城市name
private String name; 

通过 startActivityForResult 来获取选择的三级城市列表结果, 以上代码为固定格式,不可改变,直接copy 即可!!!

通过 startActivityForResult 来获取选择的三级城市列表结果, 以上代码为固定格式,不可改变,直接copy 即可!!!

通过 startActivityForResult 来获取选择的三级城市列表结果, 以上代码为固定格式,不可改变,直接copy 即可!!!