动态加载省市区

本文介绍了在项目改版中动态加载省市区的需求,详细阐述了如何从服务器获取数据并构建树形结构,同时展示了使用鸿洋大神的树形控件思路。文章通过实例代码演示了数据转换和适配器的使用,实现动态加载和节点点击展开收缩功能。
摘要由CSDN通过智能技术生成

现在网上关于省市区三联动的demo很多,包括之前的blog也写过。那为啥还要再写一次?原因是:

项目中这次是改版,也就是流程不动,只是改变显示方式。接手之前的demo已经使用spinner实现了省市区加载。

现在新需求是:

动态加载省市区,在新的一个新的页面,点击某一省(动态获取) 展开该省所有的市(动态获取),再点击某一市,加载该市所有的区(也是动态获取);

查看了很多资料,很多demo的数据源来源:

  • 本地文件,在/assets目录也会提供存放资源文件
  • 服务器返回省市区所有数据,包括省市区对应的关系,如id、pId、name

由于是改版,所以服务器数据源不会变,还是按照以前的返回方式:

1、无参请求,服务器返回所有的省,数据结构为:
     * {
     * "Results": [
     * {
     * "ShopProvinceName": "云南省"
     * },
     * {
     * "ShopProvinceName": "上海市"
     * }
     * ],
     * "Total": 0,
     * "Code": 0,
     * "ServiceTime": 1492496783
     * }
2、点击某一省,返回该省下所有的市,返回数据结构为:
     * {
     * "Results": [
     * {
     * "ShopCityName": "上海市"
     * }
     * ],
     * "Total": 0,
     * "Code": 0,
     * "ServiceTime": 1492496879
     * }
3、点击某一市,返回该市下所有的区,数据结构为
     * {
     * "Results": [
     * {
     * "ShopDistrictName": "宝山区"
     * },
     * {
     * "ShopDistrictName": "长宁区"
     * },
     * {
     * "ShopDistrictName": "奉贤区"
     * },
     * {
     * "ShopDistrictName": "虹口区"
     * },
     * {
     * "ShopDistrictName": "黄浦区"
     * },
     * {
     * "ShopDistrictName": "嘉定区"
     * },
     * {
     * "ShopDistrictName": "金山区"
     * },
     * {
     * "ShopDistrictName": "闵行区"
     * },
     * {
     * "ShopDistrictName": "浦东新区"
     * },
     * {
     * "ShopDistrictName": "普陀区"
     * },
     * {
     * "ShopDistrictName": "青浦区"
     * },
     * {
     * "ShopDistrictName": "松江区"
     * },
     * {
     * "ShopDistrictName": "徐汇区"
     * },
     * {
     * "ShopDistrictName": "杨浦区"
     * },
     * {
     * "ShopDistrictName": "闸北区"
     * }
     * ],
     * "Total": 0,
     * "Code": 0,
     * "ServiceTime": 1492496905
     * }

所以,不光要展示树形结构,还要动态获取数据


如果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值