使用PickerView实现省市区三级联动(小白篇)

1.概述 

  之前自己做项目的时候需要用到省市区三级联动的效果,本来想自己做一个,可是后来看到了github上的开源项目pickerView,个人感觉非常好用,然后去百度的时候发现好多人的博客写的太过于简单,好多人是直接复制开发者的使用介绍,导致很多新手朋友没办法使用,在下面留言也很少有回应,鉴于我自己也是一个新手,所以希望通过自己这篇博客,能帮助大家攻克这个难关,如果你也是新手,有什么不懂的不会的欢迎加我的QQ 250317460 大家一起讨论共同进步。

2.实现效果

使用PickerView实现省市区三级联动(小白篇)_第1张图片

3.原理分析

1.我这里没有使用添加依赖的方法,而是去下载了他的demo,一来这样方便自己对这个项目的理解,二来可以自定义内容,比如你不想要时间选择器精确到秒的,或者是其他的内容都可以自己更改,好,那当然第一步你需要下载个demo了。https://github.com/Bigkoo/Android-PickerView,进入这个地址,点击右下侧的clone or download,将这个压缩包下载下来,如果你那边下载不动的话可以加我的QQ250317460,我私发给你。

2.下载好之后,你把他解压出来,然后用studio打开他,这是一个完整的项目,你打开就可以直接运行的,然后我们来分析一下里面的代码,当然是从Mainactivity开始分析了,由于我们本次实现的是省市区三级联动,所以其他的功能我就不带大家分析了,我可能会在下篇文章单独拿出来分析时间选择器和二级联动,完了我们在oncreate()方法里面发现主函数并没有三级联动的信息,那是因为开发者把他放到了另外一个活动JsonDataActivity中了,所以咱们现在打开JsonDataAcitivity

3.OK打开之后呢你应该会看到三个数组,这三个数组依次代表省市区,三个我们想要的值,然后我们还是看oncreate函数,里面除了常规的代码之外,有一行 initView,然后我们往下翻,可以找到这个函数,可以看到里面只是设置了两个监听,那我们就可以跳转到onClick()函数当中了,可以看到btn_data按钮是用来实现解析json数据的,mHandler.sendEmptyMessage(),函数是解析的具体函数,那我们就应该明白,如果你在项目中想一打开就自动解析,只需要把这个函数加到oncreate()函数当中去就可以了,那当然另外一个函数就是展示了,如果你想要实现一点一个textvIew就展示,就把这个函数放到你的textView的监听器中去,OK,搞懂了这些原理,下面就说说如何导入到你自己项目中去。

4.导入到自己项目中去

1.还是看这个项目左侧,有一个pickerview文件夹,把这个文件夹放到桌面上或者任何一个你方便找的地方

 

2.打开自己的项目在app下的build中添加如下依赖

compile 'com.contrarywind:Android-PickerView:4.1.5'
compile 'com.google.code.gson:gson:2.7'

接着按下图进行

使用PickerView实现省市区三级联动(小白篇)_第2张图片

使用PickerView实现省市区三级联动(小白篇)_第3张图片

然后你把刚才让你保存的文件找到,等待他导入成功

4.成功之后,在左边项目栏里面找到app

这个文件夹右键

使用PickerView实现省市区三级联动(小白篇)_第4张图片点击打开,找到这个

使用PickerView实现省市区三级联动(小白篇)_第5张图片

就可以看到刚才导入的module了,单击OK就添加成功了。这样你就可以使用pickerview了

5.下一步就是CV的问题了

使用PickerView实现省市区三级联动(小白篇)_第6张图片

可以看一下我从demo里面CV过来的文件,其中有一些做了改动

使用PickerView实现省市区三级联动(小白篇)_第7张图片

主函数的布局

使用PickerView实现省市区三级联动(小白篇)_第8张图片

其他不改动,这个程序就可以运行了。然后你可以根据刚才一起分析的原理进行改动了。

 

你可能感兴趣的:(github)