- 添加依赖
implementation 'liji.library.dev:citypickerview:5.2.2'
- 初始化选择器
private CityPickerView cityPickerView;
@Override
protected void onCreate(Bundle savedInstanceState) {
cityPickerView = new CityPickerView();
cityPickerView.init(this);
}
- 设置参数
//设置默认地址:从服务器拿的设置过的地址
String[] addressSplit = receivingAddress.getAddress().split("-");
CityConfig cityConfig = new CityConfig.Builder()
.cancelTextSize(14)
.confirmTextSize(14)
.title("地址选择")
.titleBackgroundColor(IS_NIGHT_MODE ? "#1E212D" : "#FFFFFF")
.titleTextColor(IS_NIGHT_MODE ? "#8597A5" : "#696969")
.confirTextColor(IS_NIGHT_MODE ? "#8597A5" : "#696969")
.cancelTextColor(IS_NIGHT_MODE ? "#8597A5" : "#696969")
.provinceCyclic(true)
.cityCyclic(false)
.districtCyclic(false)
.visibleItemsCount(7)
.province(addressSplit[0])
.city(addressSplit[1])
.district(addressSplit[2])
.build();
cityPickerView.setConfig(cityConfig);
cityPickerView.setOnCityItemClickListener(new OnCityItemClickListener() {
@Override
public void onSelected(ProvinceBean province, CityBean city, DistrictBean district) {
super.onSelected(province, city, district);
tvAddress.setText(province + "-" + city + "-" + district);
});
- 点击显示选择器
public void onClickView(View view) {
KeyboardUtil.hideSoftKeyboard(this);
if (cityPickerView != null) {
cityPickerView.showCityPicker();
}
}
Github:https://github.com/androidzhangjin/citypicker



