适配iPhone X在push时tabBar往上偏移的问题

在UINavigationController的基类重写pushViewController代理方法,在push的时候修改一下tabBar的frame。

- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated {
    if (self.viewControllers.count > 0) {
        if ([viewController conformsToProtocol:@protocol(XYTransitionProtocol)] && [self isNeedTransition:viewController]) {
            viewController.hidesBottomBarWhenPushed = NO;
        }else {
            viewController.hidesBottomBarWhenPushed = YES;
        }
    }
    [super pushViewController:viewController animated:animated];
    // 修改tabBar的frame
    CGRect frame = self.tabBarController.tabBar.frame;
    frame.origin.y = [UIScreen mainScreen].bounds.size.height - frame.size.height;
    self.tabBarController.tabBar.frame = frame;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.1、iOS11新增版本判断API iOS11版本现在有了简单的API,OC也开始支持swfit的@availa...
    面条168阅读 456评论 0 1
  • 呼呼的风重重地敲打着我的窗,彷佛是要敲醒我麻木的灵魂。这座古城不断散发出它慵懒的气质,也许这只是我的感觉……一座大...
    ArleneX阅读 210评论 0 0
  • 结不结婚,跟谁结婚,这件事不是说做就可以做的,也许这就是你的一生 我是一个九零后,是一个辣妈,是一个结婚两年的家庭...
    生是一枝花阅读 165评论 2 0
  • 等待盛开的时候 就开始去想凋零的事 做失去的准备 希望能接住悲伤 快乐需要保持距离 悲伤才不会太痛 我就站在这里 ...
    简一的小時光阅读 178评论 0 0
  • 南阳有布衣,何处寻诸葛。 舌战有余味,古今剩几人。
    定盘的星阅读 260评论 1 4