ios safeAreaInsets输出不正确问题

2018-07-05  本文已影响42人  iOS坚持者
UITableView *ta = [[UITableView alloc]initWithFrame:CGRectMake(0, 0, jqW, jqH) style:UITableViewStylePlain];
    [self.view addSubview:ta];
    ta.delegate = self;
    ta.dataSource = self;
    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
        NSLog(@"%@",NSStringFromUIEdgeInsets(self.view.safeAreaInsets));
//{64, 0, 0, 0}
        NSLog(@"%@",NSStringFromUIEdgeInsets(ta.safeAreaInsets));
//{64, 0, 0, 0}
    });

需要加上一个延时,待视图显示出来了,打印的结果才正确.

SafeAreaInsets值反映了view被覆盖的部分
additionalSafeAreaInsets:在原有基础上加减响应的安全距离

上一篇 下一篇

猜你喜欢

热点阅读