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;
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值