1 Star 5 Fork 1

MengLiMing / MLMSegmentPage

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

MLMSegmentPage

manage your controllers or views

  • 快速集成顶部菜单栏
  • 拆分为MLMSegementHead和MLMSegmenScroll,分别设置,使用更灵活
  • 使用NSCache统计页面加载

效果

  • 单独创建自己的ViewController,低耦合,具体操作在自己的ViewController中实现
  • 直接创建UIView添加到视图中
  • 根据需求选择不同的样式,具体效果可以自己定制
  • 设置初次进入显示的页面,
  • 设置初次进入加载的页面数目,和滑动过程中页面中保留的页面数目

样式

//风格
typedef enum : NSUInteger {
    /**
     *  默认
     */
    SegmentHeadStyleDefault,
    /**
     *  line(下划线)
     */
    SegmentHeadStyleLine,
    /**
     *  arrow(箭头)
     */
    SegmentHeadStyleArrow,
    /**
     *  Slide(滑块)
     */
    SegmentHeadStyleSlide
} MLMSegmentHeadStyle;
//布局样式
typedef enum : NSUInteger {
    /*
     * 默认均分,根据maxTitles计算宽度,均分
     */
    MLMSegmentLayoutDefault,
    
    /*
     * 居中(标题不足一屏时选择样式,反之设置后按照居左)
     */
    MLMSegmentLayoutCenter,
    /*
     * 居左
     */
    MLMSegmentLayoutLeft
    
} MLMSegmentLayoutStyle;

部分样式预览

image image image image image image image image

安装

将 MLMSegmentPageView 拖入Xcode工程中

使用

将 MLMSegmentManager.h 加入工程中,执行代码

  • 基础设置
    MLMSegmentHead *segHead = [[MLMSegmentHead alloc] initWithFrame:CGRectMake(0, 64, SCREEN_WIDTH, 40) titles:list headStyle:_style layoutStyle:_layout];
    
    MLMSegmentScroll *segScroll = [[MLMSegmentScroll alloc] initWithFrame:CGRectMake(0, CGRectGetMaxY(_segHead.frame), SCREEN_WIDTH, SCREEN_HEIGHT-CGRectGetMaxY(_segHead.frame)) vcOrViews:[self vcArr:list.count]];
    
    [MLMSegmentManager associateHead:segHead withScroll:segScroll completion:^{
        [self.view addSubview:segHead];
        [self.view addSubview:segScroll];
    }];

滑动中加载页面

  • 默认设置为第一次进入只加载当前显示的页面,即 segScroll.loadAll = NO;
  • 默认滑动过程中最大缓存页面是所有页面,即 segScroll.countLimit = vcsOrviews.count;即segScroll.loadAll =

其他设置

  • 具体设置,参照代码
  • 注意,创建MLMSegmentHead和MLMSegmentScroll,并使用MLMSegmentManager绑定两个View,在block中设置addSubView:操作

未来将添加

  • 添加自定义button的类,用于更复杂的头部菜单
  • 添加moreButton,用于添加,删除头部菜单的数据源

反馈

  • 如果您在使用过程中发现任何bug或者有好的改动建议,希望您可以issue我或者发邮件到920459250@qq.com反馈给我

空文件

简介

快速集成顶部菜单 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Objective-C
1
https://gitee.com/MengLiMing/MLMSegmentPage.git
git@gitee.com:MengLiMing/MLMSegmentPage.git
MengLiMing
MLMSegmentPage
MLMSegmentPage
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891