jar包
api 'liji.library.dev:citypickerview:4.2.1'
代码
//申明对象
CityPickerView mPicker=new CityPickerView();
//预先加载仿iOS滚轮实现的全部数据(oncreate()中)
mPicker.init(this);
//配置
CityConfig cityConfig = new CityConfig.Builder()
.title("选择城市")//标题
.titleTextSize(18)//标题文字大小
.titleTextColor("#585858")//标题文字颜 色
.titleBackgroundColor("#E9E9E9")//标题栏背景色
.confirTextColor("#585858")//确认按钮文字颜色
.confirmText("ok")//确认按钮文字
.confirmTextSize(16)//确认按钮文字大小
.cancelTextColor("#585858")//取消按钮文字颜色
.cancelText("cancel")//取消按钮文字
.cancelTextSize(16)//取消按钮文字大小
.setCityWheelType(CityConfig.WheelType.PRO_CITY_DIS)//显示类,只显示省份一级,显示省市两级还是显示省市区三级
.showBackground(true)//是否显示半透明背景
.visibleItemsCount(7)//显示item的数量
.province("浙江省")//默认显示的省份
.city("杭州市")//默认显示省份下面的城市
.district("滨江区")//默认显示省市下面的区县数据
.provinceCyclic(true)//省份滚轮是否可以循环滚动
.cityCyclic(true)//城市滚轮是否可以循环滚动
.districtCyclic(true)//区县滚轮是否循环滚动
.setCustomItemLayout(R.layout.item_city)//自定义item的布局
.setCustomItemTextViewId(R.id.item_city_name_tv)//自定义item布局里面的textViewid
.drawShadows(false)//滚轮不显示模糊效果
.setLineColor("#03a9f4")//中间横线的颜色
.setLineHeigh(5)//中间横线的高度
.setShowGAT(true)//是否显示港澳台数据,默认不显示
.build();
//添加配置
mPicker.setConfig(cityConfig);
//显示
mPicker.showCityPicker();
//监听选择点击事件及返回结果
mPicker.setOnCityItemClickListener(new OnCityItemClickListener() {
@Override
public void onSelected(ProvinceBean province, CityBean city, DistrictBean district) {
super.onSelected(province, city, district);
//为TextView赋值
add_area_show.setText(province + "-" + city + "-" + district);
}
@Override
public void onCancel() {
super.onCancel();
}
});
//布局文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
>
<TextView
android:id="@+id/item_city_name_tv"
android:layout_width="match_parent"
android:layout_height="45dp"
android:gravity="center"
android:text="hello"
android:textSize="18sp"
android:textStyle="bold"/>
</LinearLayout>