5 分钟跑通 CityPicker:Android 省市区三级联动选择完整集成教程
2026/8/22 20:24:25 网站建设 项目流程

5 分钟跑通 CityPicker:Android 省市区三级联动选择完整集成教程

【免费下载链接】citypickercitypicker城市选择器,详细的省市区地址信息,支持仿iOS滚轮实现,仿京东样式,一级或者三级列表展示方式。项目地址: https://gitcode.com/gh_mirrors/ci/citypicker

你在做电商或物流 App 时,是不是遇到过这样的场景:地址选择要省、市、区三级联动,后端又没给接口,只能自己造数据、造界面?CityPicker 是一款轻量级的 Android 城市选择库,内置省市区数据源,几行代码就能用起来。它支持仿 iOS 滚轮、仿京东样式、一级城市列表、三级城市列表四种展示方式。

⏱ 三步跑通 CityPicker 滚轮

第 1 步:加仓库源。在 Project 级 build.gradle 里加 jitpack:

allprojects { repositories { maven { url 'https://jitpack.io' } } }

第 2 步:加依赖。app 模块 build.gradle 里加一行,6.0.2 是最新版本:

implementation 'com.github.crazyandcoder:citypicker:6.0.2'

第 3 步:调用滚轮选择。核心代码不到 20 行:

CityPickerView cityPickerView = new CityPickerView(); cityPickerView.init(this); CityConfig cityConfig = new CityConfig.Builder() .title("选择城市") .province("江苏") .city("常州") .district("新北区") .build(); cityPickerView.setConfig(cityConfig); cityPickerView.setOnCityItemClickListener(new OnCityItemClickListener() { @Override public void onSelected(ProvinceBean province, CityBean city, DistrictBean district) { // 这里拿到选中的省、市、区 } @Override public void onCancel() { } }); cityPickerView.showCityPicker();

跑起来会弹出一个滚轮,默认选中定位在江苏、常州、新北区。

🛠 进阶玩法:换联动级别和样式

  • 自由切换联动级别:给 Builder 传 WheelType,就只展示对应的级数。只要省用PRO,只要省市用PRO_CITY
CityConfig cityConfig = new CityConfig.Builder() .setCityWheelType(CityConfig.WheelType.PRO_CITY) .build();
  • 换仿京东样式:类名换成 JDCityPicker,布局变成左右两栏的省市列表。配置同样是 Builder,用 ShowType 控制是否带区级:
JDCityPicker jdPicker = new JDCityPicker(); jdPicker.init(this); jdPicker.setConfig(new JDCityConfig.Builder().build());
  • 用自己的数据源:内置区划不满足业务时,用 CustomCityPicker 传自己的 CustomCityData 列表,滚轮里就只剩你的数据。

⚠️ CityPicker 避坑清单:4 个常见问题

  • 首次打开卡顿:库在 init 时解析内置城市数据。选择器对象在 onCreate 里建一次、全页复用,别在点击事件里反复 new。
  • 新合并的区县选不到:数据源是 2018 年 12 月行政区划,之后新设的区县不会更新。需要最新区划就用 CustomCityPicker 喂自己的数据。
  • 混淆后 release 包崩溃:库内部有反射调用,ProGuard 必须加对应的 keep 规则,否则线上直接炸。
  • 结果里混进港澳台:滚轮默认包含港澳台数据,业务不需要的地方加.setShowGAT(false)就能隐藏。

📦 延伸资源:示例工程与源码位置

  • 示例工程:app模块,每种样式一个演示页,参数可实时调整
  • 核心库源码:citypickerview模块
  • 内置城市数据文件:citypickerview/src/main/assets/china_city_data.json
  • 项目说明与更新记录:README.md

把滚轮搬进你自己的工程,地址选择这块就算齐活了。

【免费下载链接】citypickercitypicker城市选择器,详细的省市区地址信息,支持仿iOS滚轮实现,仿京东样式,一级或者三级列表展示方式。项目地址: https://gitcode.com/gh_mirrors/ci/citypicker

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询