地区选择器

先看一下效果图:

地区选择器

使用别人的开源框架

1.在app 下的build.gradle 的文件中添加如下依赖:  

2.compile 'liji.library.dev:citypickerview:1.1.0'

3.MainActivity中:

   public void initCityPicker() {

        //滚轮文字的大小
//滚轮文字的颜色
//省份滚轮是否循环显示
//城市滚轮是否循环显示
//地区(县)滚轮是否循环显示
//滚轮显示的item个数
//滚轮item间距
        cityPicker = new CityPicker.Builder(MainActivity.this)
                .textSize(20)//滚轮文字的大小
                .title("地址选择")
                .backgroundPop(0xa0000000)
                .titleBackgroundColor("#0CB6CA")
                .titleTextColor("#000000")
                .backgroundPop(0xa0000000)
                .confirTextColor("#000000")
                .cancelTextColor("#000000")
                .province("xx省")
                .city("xx市")
                .district("xx区")
                .textColor(Color.parseColor("#000000"))//滚轮文字的颜色
                .provinceCyclic(true)//省份滚轮是否循环显示
                .cityCyclic(false)//城市滚轮是否循环显示
                .districtCyclic(false)//地区(县)滚轮是否循环显示
                .visibleItemsCount(7)//滚轮显示的item个数
                .itemPadding(10)//滚轮item间距
                .onlyShowProvinceAndCity(false)
                .build();

        //监听方法,获取选择结果
        cityPicker.setOnCityItemClickListener(new CityPicker.OnCityItemClickListener() {
            @Override
            public void onSelected(String... citySelected) {
                //省份
                String province = citySelected[0];
                //城市
                String city = citySelected[1];
                //区县(如果设定了两级联动,那么该项返回空)
                String district = citySelected[2];
                //邮编
                String code = citySelected[3];

                adresss.setText(province + city + district);
                Log.e("aaaaaaaaaaaaaa",adresss.getText().toString());
            }

            @Override
            public void onCancel() {


            }
        });
    }


    //隐藏软键盘
//    InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);

    private void initView() {
        adresss = (TextView) findViewById(R.id.adresss);
        adresss.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                initCityPicker();
                cityPicker.show();
            }
        });
    }
//                imm.hideSoftInputFromWindow(view.getWindowToken(),0); //强制隐藏键盘

}