# ChooseAreaModule (opens new window)

# 该组件实现多级联动选择器功能。

# 说明

  • 多级分类选择器,用于项目中的分类选择(地址、仓库类型等)。

# 安装

在项目 Podfile 文件内添加

pod 'ChooseAreaModule',:git => 'http://192.168.100.254:3000/iosteam/ChooseAreaModule.git',:branch => 'gaojw'

在项目目录下执行脚本

pod install

插件即可集成至项目内

# ChooseAreaViewController说明

  • limitIndex 限制层级数,当选择层级为limitIndex时,将数据调用chooseAreasArrayBlock传出,默认为3
  • titleString 顶部标题
  • areasArray 已选择的地区数组NSArray<ChooseAreaInfo *>(福建省—福州市—仓山区)
  • allAreasArray 已选择的地区二维数组([北京市、福建省…][福州市、厦门市…][鼓楼区、台江区…])
  • allAreasTree 所有的地区数组(树形结构),含所有子区域。设置时与allAreasArray二选一(已获取所有分级数据时,使用allAreasTree;只获取部分分组数据时,使用allAreasArray)
/**
 选择地区结束回调
*/
void (^chooseAreasArrayBlock)(NSArray *areasArray,NSArray *allAreasArray)

/**
 选中地区回调(非结束选择)。
 如果设置了allAreasTree,不处理该回调;否则调用请求更多分类数据。
*/
void (^didSelectRowAreasInfoBlock)(NSArray *titlesArray,NSArray *chooseAreaArray,NSInteger selectedIndex)

/**
  请求数据处理,didSelectRowAreasInfoBlock请求数据后调用
 */
-(void)choosedChooseAreaInfoForAreas:(NSArray <ChooseAreaInfo *>*)areas index:(NSInteger)index

# 使用

  1. 使用时导入 #import "ChooseAreaModule.h"
  2. 设置相关的属性、及回调处理
  • didSelectRowAreasInfoBlock 分类选中后,下一级数据的请求处理(请求到数据后请调用choosedChooseAreaInfoForAreas:index:方法设置新的分类数据)
  • chooseAreasArrayBlock 结束选择后的处理(界面刷新等)
  • isShowOn 显示选择界面(所有的属性配置需要在isShowOn方法之前赋值,在isShowOn方法之后赋值会有奇怪的bug,titleString在isShowOn后设置。)

注意事项: ChooseAreaViewController使用ChooseAreaInfo模型,其它数据类型先转换后使用,原数据可以使用ChooseAreaInfo.originInfoArray获取。

至此组件介绍完毕。

最后更新时间: 11/24/2021, 7:45:32 AM