生日联动:
第一步:先添加依赖
compile 'com.github.flavienlaurent.datetimepicker:library:0.0.2'
第二部:实现代码DatePickerDialog datePickerDialog;
private void showSelectBirthdayDialog() {
if (datePickerDialog == null) { Calendar calendar = Calendar.getInstance(); //日期选择对话框 datePickerDialog = DatePickerDialog.newInstance(new MyDateSetListener(),//日期选择监听 calendar.get(Calendar.YEAR),//年 calendar.get(Calendar.MONTH),//月 calendar.get(Calendar.DAY_OF_MONTH),//日 false);//是否震动 datePickerDialog.setYearRange(1985, 2028);//设置年的范围 } datePickerDialog.show(getSupportFragmentManager(), ""); }
private class MyDateSetListener implements DatePickerDialog.OnDateSetListener { @Override public void onDateSet(DatePickerDialog datePickerDialog, int year, int month, int day) { tv.setText(year + "-" + month + "-" + day); } }
地区联动:
第一步:添加依赖
compile 'liji.library.dev:citypickerview:0.6.0'
第二部:实现代码
private CityPicker cityPicker;
private void showSelectHomeDialog() { if (cityPicker == null) { cityPicker = new CityPicker.Builder(this)//城市选择器 .title("选择家乡")//设置标题 .textSize(20)//滚轮文字的大小 .titleBackgroundColor("#b9b7b8")//设置标题文字的颜色 .onlyShowProvinceAndCity(false)//只显示省和城市 .cancelTextColor("#FF4081")//取消文本的颜色 .confirTextColor("#FF4081")//确定文本的颜色 .province("四川省")//设置缺省的省 .city("成都市")//设置缺省的市 .district("无") .textColor(Color.parseColor("#000000"))//滚轮文字的颜色 .provinceCyclic(true)//省份滚轮是否循环显示 .cityCyclic(false)//城市滚轮是否循环显示 .districtCyclic(false)//地区(县)滚轮是否循环显示 .visibleItemsCount(7)//滚轮显示的item个数 .itemPadding(10)//滚轮item间距 .build(); //确定选择监听 cityPicker.setOnCityItemClickListener(new MyOnCityItemClickListener()); } cityPicker.show(); } private class MyOnCityItemClickListener implements CityPicker.OnCityItemClickListener { @Override public void onSelected(String... citySelected) { String city = citySelected[0] + "-" + citySelected[1] + "-" + citySelected[2]; tv.setText(city); } }