iOS 两个tabbar之间跳转,支持左滑,支持中间凸起

1、不支持左滑最简单粗暴两个tabbarController跳转

  • 跳转
    点击跳转直接设置window的RootViewController为第二个tabbarController就可以跳转
  • 返回
    点击返回直接设置windon的的RootViewController为第一个tabbarController就可以返回

2、支持左滑两个tabbarController跳转

1、一般想到的肯定是是push跳转

 SecondTabbarController *tabbarVC = [[SecondTabbarController alloc] init];
        [self.navigationController pushViewController:tabbarVC animated:YES];

这样跳转过去就支持左滑.错没错呢,肯定没有错了.只是跳转过去导航栏没有隐藏,发现多了一个导航栏,如是隐藏导航栏就解决了

-(void)viewWillAppear:(BOOL)animated{
    [super viewWillAppear:animated];
    [self.navigationController setNavigationBarHidden:NO animated:YES];
}

- (void)viewWillDisappear:(BOOL)animated{
    [super viewWillDisappear:animated];
    [self.navigationController setNavigationBarHidden:YES animated:YES];
}

3、中间凸起

//重写button 高亮
- (void)setHighlighted:(BOOL)highlighted {}

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
    if (self.isHidden == NO) {
        CGPoint newPoint = [self convertPoint:point toView:self.centerBtn];
        if ( [self.centerBtn pointInside:newPoint withEvent:event]) {
            return self.centerBtn;
        }else{
            return [super hitTest:point withEvent:event];
        }
    }
    else {
        return [super hitTest:point withEvent:event];
    }
}

附上demo tabbarController

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,198评论 4 61
  • "努力了就会有收获",这是我写的小文首次阅读量破百时的真实感受。内心有点激动,有的无法置信,又觉得理所当然...
    日出朝阳阅读 511评论 0 8
  • 四大名著之一的《水浒传》总算被我啃完了,好辛苦!不过,我总算明白了很多道理。 不必说宋江和小旋风柴进的仗义疏财,也...
    沉着还赤龙阅读 377评论 0 1
  • 今天想简单地记录一下: 一,中午午睡,傍晚休息的都是都被公司的电话吵醒了,很想骂人; 二,手底下有个人晚上没来加班...
    你的云云阅读 196评论 0 1
  • 这个世界上有这么多人信你 我相信你信的是自己 尝世间苦难,渡苦海,立众生 站在路的前头,你用一尊佛 忠实的信徒,往...
    李含山阅读 629评论 10 12