美文网首页iOS开发好文iOS开发
JMpickerView -- 控制器切换框架

JMpickerView -- 控制器切换框架

作者: Jimmy_P | 来源:发表于2015-12-15 15:44 被阅读184次

JMpickerView

JMpickerView 是本人 Jimmy 使用Objective-C语言对子控制器间平滑切换封装的一个框架。 基于UIViewController的容器属性,通过添加子容器,可平滑高效的切换界面,同时保证只存在一个控制器,其他控制器在移出控制器时进行了缓存和销毁, 简单易用,效率高。

Github地址:

https://github.com/JimmyPeng4iOS/JMPickerView


示例

示例

使用方法:

  • 懒加载选择bar和主View
//顶部 选择bar
- (JMtopSeleteView *)topView
{
    if (_topView == nil)
    {
        //指定按钮的数目(不建议超过6个), 标题数组 , 标题颜色,  bar的颜色
               _topView = [JMtopSeleteView topViewWithNum:4
                                           andTitle:@[@"gray",@"red",@"yellow",@"blue"]
                                           titleColor:[UIColor orangeColor]
                                           barColor:[UIColor whiteColor]];
        //可自定义frame
        _topView.frame = CGRectMake(0, 64,ScreenWidth, 44);
    }
    return _topView;
}

//主View
- (JMPickerView *)pickerView
{
    if (_pickerView == nil)
    {     //指定父容器, 一般为self
        _pickerView = [JMPickerView pickerViewWithBaseViewController:self];
        //View的frame
        _pickerView.frame = CGRectMake(0,108, ScreenWidth, ScreenHeight-108);
        //替换view
        self.view = _pickerView;
        //添加topBar
        [self.view addSubview:self.topView];
    }
    return _pickerView;
}
  • 初始化
  //遵守<JMtopSeleteViewDelegate>代理
    self.topView.delegate = self;
  //定义一开始显示的页面
    self.pickerView.seletedIndex = 0;

  • 实现代理方法
- (UIViewController *)JMtopSeleteView:(JMtopSeleteView *)sender controllerAt:(NSInteger)index
{
    switch (index)
    {
        case 0:
            return [[GrayViewController alloc] init];
        case 1:
            return [[RedViewController  alloc] init];
        case 2:
            return [[YellowViewController alloc] init];
        default:
            return [[BlueViewController alloc] init];
    }
}


最后 再来一遍github地址 (๑•̀ㅂ•́)و✧

https://github.com/JimmyPeng4iOS/JMPickerView


相关文章

网友评论

    本文标题:JMpickerView -- 控制器切换框架

    本文链接:https://www.haomeiwen.com/subject/wfvuhttx.html