iOS13中 UITabBar隐藏线条、定位不起作用问题

释放双眼,带上耳机,听听看~!

1. 隐藏线条处理

 

CGRect rect = CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
    UIGraphicsBeginImageContext(rect.size);
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetFillColorWithColor(context, [[UIColor clearColor] CGColor]);
    CGContextFillRect(context, rect);
    UIImage *img = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    if (@available(iOS 13.0, *)) {
        UITabBarAppearance *tabBarAppearance = [self.tabBar.standardAppearance copy];
        [tabBarAppearance setBackgroundImage:img];
        [tabBarAppearance setShadowColor:[UIColor clearColor]];
        [self.tabBar setStandardAppearance:tabBarAppearance];
    } else {
        [self.tabBar setBackgroundImage:img];
        [self.tabBar setShadowImage:img];
    }

 

2. 更改UITababr的位置

之前是放在viewWillLayoutSubviews 里面的,但从iOS13开始,放到这个方法里面修改位置不再起作用。需要放到viewDidLayoutSubviews里面

  - (void)viewDidLayoutSubviews{
        [super viewDidLayoutSubviews];

        CGRect tabFrame = self.tabBar.frame;
        tabFrame.size.height = 44;
        tabFrame.origin.y = 27;
        self.tabBar.frame = tabFrame;
    }

 

人已赞赏
iOS文章

iOS13 UITabbar 隐藏顶部分割线

2020-3-27 12:46:48

iOS文章

iOS项目的静态代码扫描之OClint使用

2020-3-27 14:01:54

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索