从早期的时候就比较喜欢拉框架直接用,所以以前记录了很多

关于 CityPicker 框架,我用的时候还是2017年,但是这几年(2022)改变了很多,扩展性也很强,如果要了解最新使用的话,最好还是去 github 看框架的最新使用 ~

地址关联Blog

  • Citypicker 五分钟内快速实现地址选择器
  • 仿京东地址选择器使用指南
  • AndroidPicker 快速实现多样化日期选择器与地址选择器
  • 实现效果
  • 使用说明
    • API注明
    • 回调结果
  • 使用方式

实现效果

早以前的git图,被转存成静态jpg了,无语中...

使用说明

API注明
方法 含义
textSize 滚轮文字的大小,int 类型,默认为18
title 选择器标题,默认为“选择地区”
backgroundPop 背景,默认为半透明,16位进制颜色代码,带alpha值,如0xa0ffffff
titleBackgroundColor 标题栏背景,默认为灰色,#C7C7C7
confirTextColor 确认按钮字体颜色,默认为系统的colorPrimary颜色值
cancelTextColor 取消按钮字体颜色,默认为系统的colorPrimary颜色值
province 默认的显示省份,显示选择器后直接定位的item位置
city 默认的显示市,显示选择器后直接定位的item位置
district 默认的显示区,显示选择器后直接定位的item位置
textColor 滚轮文字的颜色 ,int 类型,默认为0xFF585858
provinceCyclic 省份的滚轮是否循环滚动
cityCyclic 市的滚轮是否循环滚动
districtCyclic 区的滚轮是否循环滚动
visibleItemsCount 滚轮显示的item个数,int 类型,默认为5个
itemPadding 滚轮item间距,默认为5dp
onlyShowProvinceAndCity(boolean flag) 是否只显示省份和市的两级联动,去掉区或者县
titleTextColor (标题文字颜色,默认为 #E9E9E9)
回调结果

只需传入Context便可获取选择的省市区域的信息,结果返回四项,可根据自己的实际需求进行选择。

回调 含义
citySelected[0] 省份信息
citySelected[1] 城市信息
citySelected[2] 区县信息
citySelected[3] 邮编信息

使用方式

  • build引用(2017的版本,2022我去看了下 版本已经到6.0.2了,所以最好去看原作者的使用方式
 compile 'liji.library.dev:citypickerview:0.7.0'
  • MainActivity
package com.example.dow.citypickerview;import android.graphics.Color;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;import com.lljjcoder.citypickerview.widget.CityPicker;public class MainActivity extends AppCompatActivity {private TextView mContent;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);TextView mBtn =  (TextView) findViewById(R.id.tv_btn);mContent = (TextView) findViewById(R.id.tv_content);mBtn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {getAddress();}});}private void getAddress()   {CityPicker cityPicker=new CityPicker.Builder(MainActivity.this).textSize(14).title("地址选择").titleBackgroundColor("#FFFFFF").confirTextColor("#696969").cancelTextColor("#696969").province("江苏省").city("常州市").district("天宁区").textColor(Color.parseColor("#000000")).provinceCyclic(true).cityCyclic(false).districtCyclic(false).visibleItemsCount(7).itemPadding(10).onlyShowProvinceAndCity(false).build();cityPicker.show();//监听事件,获取结果cityPicker.setOnCityItemClickListener(new CityPicker.OnCityItemClickListener()   {@Overridepublic void onSelected(String...   citySelected)   {//省份String province = citySelected[0];//城市String city =citySelected[1];//区县(如果设定了两级联动,那么该项返回空)String district = citySelected[2];//邮编String code = citySelected[3];//为展示区赋值mContent.setText(province.trim()   +   "-"   +   city.trim()   +   "-"   +   district.trim());}});}
}
  • activity_main
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/activity_main"android:orientation="vertical"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="com.example.dow.citypickerview.MainActivity"><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:id="@+id/tv_btn"android:gravity="center"android:padding="5dp"android:text="地址选择器" /><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:id="@+id/tv_content"android:gravity="center"android:padding="5dp"/>
</LinearLayout>

Android进阶之路 - Citypicker 五分钟内快速实现地址选择器相关推荐

  1. Android进阶之路 - 仿京东地址选择器使用指南

    因为现在项目的地址选择器比较low,自己又比较懒,所以就找到了仿京东的地址选择器,观赏几篇博文之后,发现总是被半路卡死,很难一路走到底,所以在github找到了项目地址,但是作者的功能简介又介绍的不是 ...

  2. Android进阶之路 - 解决部分手机拍照之后图片被旋转的问题

    这几天犯了一个错误,初期想着甩锅给后台的- 但还好及时发现了是自身的问题~ 关联文章 Android基础进阶 - 调用拍照.获取图片(基础) Android基础进阶 - 获取.调用相册内图片(基础) ...

  3. 黎想深度访谈腾讯顶级产品经理的进阶之路——第五篇《匠心》

    16个月精心打磨,9位顶级产品专家研讨提炼,凝聚腾讯产品经验的八集八分钟产品课分别从用户.定位.需求.时机.匠心.危机.合作.商业角度出发,还原产品背后的故事,分享给你腾讯产品的心法.艺形艺意工作室创 ...

  4. 五分钟内搭建的混沌电路

    简 介: 针对一种简单的混沌电路进行测试,没有能够复现电路的工作状态.具体原因尚未清楚. 关键词: 混沌电路,相移单管电路 #mermaid-svg-QPl6WYe8NnE6m9yt .label{f ...

  5. 在五分钟内学习使用Python进行类型转换

    by PALAKOLLU SRI MANIKANTA 通过PALAKOLLU SRI MANIKANTA 在五分钟内学习使用Python进行类型转换 (Learn typecasting in Pyt ...

  6. Android进阶之路 - 批量下载、缓存图片、视频

    之前已经记录过,批量下载图片和缓存本地的方式,此篇主要记录批量下载图片.视频,同时缓存在本地的功能实现 关联篇 Android进阶之路 - 批量下载.缓存图片 Android进阶之路 - 批量下载.缓 ...

  7. Android进阶之路 - 软键盘中右下角的设置与监听

    在项目中,多多少少会遇到修改软键盘右下角按钮的需求,虽然已经写过几次,但是还是觉得在这里专心做个笔记比较放心 ~ 我的那些软键盘Blog ~ Android进阶之路 - 常见软键盘操作行为 Andro ...

  8. Android进阶之路 - 批量下载、缓存图片

    在日常项目开发中,关于图片批量下载,数据缓存的相关功能比比皆是,这次也是去年在项目中需要在本地缓存商品数据,所以用到了批量下载的功能,特此记录 ~ 关联篇 Android进阶之路 - 批量下载.缓存图 ...

  9. Android进阶之路 - 存、取、读 本地 Json 文件

    最近在开发中又开始加载一些本地的json数据源,回头看之前竟然没记录,赶紧记录一波 ~ 如何准备一个合格的json文件? AndoridStudio中如何存放json文件? 如何读取本地Json文件数 ...

最新文章

  1. 物理史2000年来最精彩的对决!
  2. 关于Delegate 和 MulticastDelegate的实现
  3. Java 技术篇 - 连接oracle数据库执行sql使用close()关闭createStatement()无效无法清除游标缓存问题解决,报“ORA-01000: 超出打开游标的最大数“错误解决方法
  4. 程序员硬核宝典(面试题集、在线免费工具箱)
  5. 拆分备份(还原)比较大的数据库为多个bak文件
  6. php 动态设置utf8,PHP对GB编码动态转UTF-8几种方法评测
  7. documentbodyscrollTop的值总为零的解决办法
  8. 事件内核对象 CreateEvent
  9. java maven restful_使用 maven 生成一个支持端到端自动测试的 RESTful 服务项目脚手架...
  10. 我真的还是18岁的那个我
  11. QT-C++ Nesting排料优化,广告,服装,木工排料(支持矩形、异形排版,提高优化效率)
  12. 前端工程师的摸鱼日常(9)
  13. Linux创建桌面快捷方式
  14. java报表技术总结_15个Java的报表工具总结
  15. linux mint 19界面美化,Linux Mint19字体、主题美化
  16. 菜鸟教程php模拟器,史上最强劲的android模拟器命令详解
  17. Unity Ugui 详解 Content Size Fitter 和 Horizontal Layout Group 的使用
  18. 汉庭酒店专属歌曲发布,由左小祖咒和罗永浩创作
  19. 计算机重启后一直黑屏转圈,技术员教你解决win10开机无限黑屏转圈重启的解决方法...
  20. 码元速率 matlab,[转载]基于小波变换的移相键控信号符号速率估计(matlab仿真)...

热门文章

  1. 计算机一级最新版本,计算机一级掌上通最新版
  2. 关于maya修改浏览器问题
  3. CRUD Operations Using the Generic Repository Pattern and Dependency Injection in MVC
  4. 【突发奇想 之 vector使用时性能测试】
  5. win10计算机管理的作用,Win10新功能的详细介绍
  6. 初学树莓派——(九)DHT11数据传入ONENET
  7. python根据经纬度确定省份_根据经纬度定位用户所在城市
  8. 数据结构——定长串操作
  9. 关于pr扩展是灰色的问题
  10. 静态资源请求被拦截问题