仿京东/美团电商筛选菜单 电商筛选菜单 电商通用筛选菜单
Clone or download
Latest commit 2ab35bb Jan 20, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
GHDropMenu 增加瀑布流菜单 Jan 20, 2019
GHDropMenuDemo.xcodeproj 增加瀑布流菜单 Jan 20, 2019
GHDropMenuDemo 增加瀑布流菜单 Jan 20, 2019
.DS_Store 瀑布流增加多选 Jan 19, 2019
LICENSE Initial commit Dec 15, 2018
README.md readme Jan 6, 2019
Untitled.gif 修复bug Jan 6, 2019

README.md

GHDropMenu 简单使用 无入侵 对原项目无污染

筛选菜单 京东筛选菜单 美团筛选菜单 电商通用筛选菜单


Untitled.gif


使用方法:

GHDropMenu *dropMenu = [GHDropMenu creatDropMenuWithConfiguration:nil frame:CGRectMake(0, kGHSafeAreaTopHeight,kGHScreenWidth, 44) dropMenuTitleBlock:^(GHDropMenuModel * _Nonnull dropMenuModel) {
        weakSelf.navigationItem.title = [NSString stringWithFormat:@"筛选结果: %@",dropMenuModel.title];
    } dropMenuTagArrayBlock:^(NSArray * _Nonnull tagArray) {
        [weakSelf getStrWith:tagArray];
    }];
    dropMenu.durationTime = 0.5;
    dropMenu.delegate = self;
    dropMenu.dataSource = self;
    [self.view addSubview:dropMenu];

实现数据源方法:

// 返回筛选菜单标题的个数
- (NSArray *)columnTitlesInMeun:(GHDropMenu *)menu {
}

// 返回每列筛选菜单的选项
- (NSArray *)menu:(GHDropMenu *)menu numberOfColumns:(NSInteger)columns {
}

2019.1.6 更新

+ 增加价格输入判断逻辑
	* 小数点最多输入两位
	* 第一位不能输入小数点
	* 增加校验方法,当最小价格大于最大价格弹窗提示并且清空用户输入
	

2018.12.30更新

+ 增加吸附效果的筛选菜单
+ 分别可选tableView悬浮菜单和collectionView悬浮菜单
+ 增加单独侧滑菜单筛选
+ 适配x,xs,xr,xsmax
+ 去掉刚开始创建的动画
+ 自定义筛选标题,自定义筛选内容,自定义筛选标签,自定义筛选头部内容
+ 数组越界处理
+ 价格输入筛选
+ 实现tag标签,单选,多选,取消选中效果
+ 保留上次选中选项
+ 动画展开,移除
+ 可以重新传入模型,重新刷新数据源
+ 选中内容通过代理的方式回调
+ 对原有项目无污染,直接拖进项目即可使用
+ dropMenu的title自适应宽度

- 去掉titleView初始化动画

使用方法

  • GHDropMenu文件夹 拖入项目中
  • 导入 GHDropMenu.h
    /** 配置筛选菜单模型 */
    GHDropMenuModel *configuration = [[GHDropMenuModel alloc]init];
    /** 配置筛选菜单是否记录用户选中 默认NO */
    configuration.recordSeleted = NO;
    /** 设置数据源 */
    configuration.titles = [configuration creaDropMenuData];
    
    /** 创建dropMenu 配置模型 &&frame */
    GHDropMenu *dropMenu = [[GHDropMenu alloc]creatDropMenuWithConfiguration:configuration frame:CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, 44)];
    dropMenu.delegate = self;
    
    [self.view addSubview:dropMenu];
    
  • 需要构造json数据
详见demo
  • 当需要返回上级页面的时候需要调用关闭菜单的方法
- (vold)closeMenu;

接下来要做的

  • 优化代码,完善文档
  • 增加类似boss直聘多级菜单选择

在使用中如有任何问题欢迎骚扰我,如果对你有帮助请点帮我一个,小弟感激不尽😊

邮箱 45329453@qq.com

关注我的博客 没事写点小东西