Android 省市区三级联动选择

首先添加依赖

compile 'liji.library.dev:citypickerview:0.7.0'

然后创建一个textview用来显示最后确定的地址,给TextView添加点击事件,调用下面方法:

private void selectAddress() {
    CityPicker cityPicker = new CityPicker.Builder(getActivity())
            .textSize(14)
            .title("地址选择")
            .titleBackgroundColor("#FFFFFF")
            .confirTextColor("#696969")
            .cancelTextColor("#696969")
            .province("四川省")
            .city("成都市")
            .district("青羊区")
            .textColor(Color.parseColor("#000000"))
            .provinceCyclic(true)
            .cityCyclic(false)
            .districtCyclic(false)
            .visibleItemsCount(7)
            .itemPadding(10)
            .onlyShowProvinceAndCity(false)
            .build();
    cityPicker.show();
    //监听方法,获取选择结果
    cityPicker.setOnCityItemClickListener(new CityPicker.OnCityItemClickListener() {
        @Override
        public void onSelected(String... citySelected) {
            //省份
            String province = citySelected[0];
            //城市
            String city = citySelected[1];
            //区县(如果设定了两级联动,那么该项返回空)
            String district = citySelected[2];
            //为TextView赋值
            tv_address.setText(province.trim() + ">" + city.trim() + ">" + district.trim());
        }
    });
}
  1. citySelected[0]:表示:省份信息
  2. citySelected[1]:表示:城市信息
  3. citySelected[2]:表示:区县信息
  4. citySelected[3]:表示:邮编信息
  1. textSize(滚轮文字的大小,int 类型,默认为18)
  2. title(选择器标题,默认为“选择地区”)
  3. backgroundPop(背景,默认为半透明,16位进制颜色代码,带alpha值,如0xa0ffffff)
  4. titleBackgroundColor(标题栏背景,默认为灰色,#C7C7C7)
  5. confirTextColor(确认按钮字体颜色,默认为系统的colorPrimary颜色值)
  6. cancelTextColor(取消按钮字体颜色,默认为系统的colorPrimary颜色值)
  7. province(默认的显示省份,显示选择器后直接定位的item位置)
  8. city(默认的显示市,显示选择器后直接定位的item位置)
  9. district(默认的显示区,显示选择器后直接定位的item位置)
  10. textColor(滚轮文字的颜色 ,int 类型,默认为0xFF585858)
  11. provinceCyclic(省份的滚轮是否循环滚动)
  12. cityCyclic(市的滚轮是否循环滚动)
  13. districtCyclic(区的滚轮是否循环滚动)
  14. visibleItemsCount(滚轮显示的item个数,int 类型,默认为5个)
  15. itemPadding(滚轮item间距,默认为5dp)
  16. onlyShowProvinceAndCity(boolean flag)(是否只显示省份和市的两级联动,去掉区或者县)
  17. titleTextColor(标题文字颜色,默认为 #E9E9E9)


你可能感兴趣的:(Android 省市区三级联动选择)