iPhoneX适配解决iPhoneX跳转页面时tabbar上移问题

       iPhoneX马上要发布了,所以iPhoneX的适配也提上了日程,近日发现一个问题是,当跳转页面的时候,只要加上hidesBottomBarWhenPushed = YES 这行代码,当跳转页面的时候,tabbar都会上移一下,返回的时候也是回到原位的。问题虽然不大,但看着难受。所以千方百计的找解决办法。终于,解决办法如下:

       

       第一步:写一个类继承自UITabBar,这里我取名叫 LMCustomTabBar ,然后在.m文件里重写两个方法

#pragma mark - Override Methods

- (void)setFrame:(CGRect)frame

{

    if (self.superview &&CGRectGetMaxY(self.superview.bounds) !=CGRectGetMaxY(frame)) {

        frame.origin.y =CGRectGetHeight(self.superview.bounds) -CGRectGetHeight(frame);

    }

    [super setFrame:frame];

}


#pragma mark - Initial Methods

- (instancetype)initWithFrame:(CGRect)frame

{

    self = [superinitWithFrame:frame];

    if (self) {

        self.translucent =false;

        self.backgroundColor = [UIColorwhiteColor];

    }

    return self;

}


     第二步:我自定义的tabbar取名叫 LMTabBarVC,继承自UITabBarController ,在自定义的tabbar实例化的时候,加一行代码如下:

LMTabBarVC *defalut = [[LMTabBarVCalloc]init];

    

    [defalut setValue:[[LMCustomTabBaralloc]init]forKey:@"tabBar"];



这样就完美解决iPhoneX页面跳转时tabbar上移的问题了,觉得有用点赞,如果还有问题的话可以给我留言。


你可能感兴趣的:(Objective-C)