FXDropDownMenu 多栏目点击下拉菜单效果

FXDropDownMenu

点击出现的下拉菜单,简单设置数据源就可以实现效果

导入方式:

将Demo中的FXDropDownMenu文件夹拖入你的工程,在需要使用下拉菜单的地方引用FXDropDownMenu.h即可.

使用:

FXDropDownMenu类继承自UIView,直接在你需要使用的地方确定frame新建就好,数据源方法确定加载数据,常见的显示属性已经列出,可以直接赋值,然后调用 showWithView方法就可以显示在你设置好的视图上。

    FXDropDownMenu * menu = [[FXDropDownMenu alloc] initWithFrame:CGRectMake(0, 20, [UIScreen mainScreen].bounds.size.width, 50)];
    menu.selectedColor = [UIColor colorWithRed:34.0/255 green:208.0/255 blue:177.0/255 alpha:1];
    menu.unSelectedColor = [UIColor blackColor];
    menu.columnWidth = 100;
    menu.rowHeight = 44;
    menu.columnTextFont = [UIFont systemFontOfSize:16];
    menu.rowTextFont = [UIFont systemFontOfSize:14];
    menu.delegate = self;
    menu.dataSource = self;
    [menu showWithView:self.view];

数据源的协议见下面的代码,可以看出有点TableViewDataSource的味道,这里我们分别传如两个字符串范型的数组就可以了,因为只做显示,所以吧需要显示出来的文案做成数组就好。

@protocol FXDropDownMenuDataSource <NSObject>

@required

//第一级菜单选项的标题数组,内容为NSString类型
-(NSArray<NSString *> *)theColumnTitlesArrayWithMenu:(FXDropDownMenu *)menu;

//第二级菜单选项的标题数组(下滑菜单),内容为NSString类型

-(NSArray<NSString *> *)theRowTitlesArrayWithColumn:(NSInteger)column;

@end

代理方法如下,会返回给你点击的行列序号,根据此来刷新自己的界面或者做其他操作就好。

@protocol FXDropDownMenuDelegate <NSObject>

@optional
//选中二级菜单之后的操作
- (void)menu:(FXDropDownMenu *)menu didSelectColumn:(NSInteger) column andRow:(NSInteger) row;

@end

效果展示:

12月-03-2017 19-18-08.gif

这个是我在实际APP中的使用,更多的样式都可以在代码中改,欢迎使用.

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 去年,我最大的感受是,我们家经常收快递。老婆感觉我们家缺的,需要的,统统淘宝买买买,反正也不贵。 今年,经过几次我...
    我是孟祥勇阅读 78评论 0赞 0
  • 真正最美味的食物莫过于快速杀死 用正确的切割方法 吃上一口未成经过煮熟处理加工过的肉 感受鲜血在口腔内流淌的肉质爆...
    爾爾_4aa6阅读 503评论 0赞 0
  • 草薰风暖绿杨堤, 十里桃花笑春风。 明眸流盼遗光彩, 忆昔朱颜初见时。
    流湘遇阅读 205评论 0赞 1
  • 一、精研文件,心中有底 明天要继续下乡督查扶贫。 之前一段时间,一直处于在干中学的状态,见到的许多材料,只能是按图...
    乌卓阅读 313评论 1赞 5
  • 我的梦想,我的天空, 你的梦想,你的未来, 我们没有什么不同, 只因我们都在坚持我们的梦, 当初的梦…… 青...
    颠沛流离的人生阅读 218评论 1赞 3

友情链接更多精彩内容