При установке нового кадра табличного представления в приложении viewDidLayoutSubviews происходит сбой в iOS 7

- (void)viewDidLayoutSubviews {
    [super viewDidLayoutSubviews];
    if (employeeListModel.count > 0) {
        if ([employeeListModel count]*90 < self.view.bounds.size.height-64) {
            CGRect frame = self.empListTableView.frame;
            frame.size.height = [employeeListModel count]*90;
            self.empListTableView.frame = frame;
            //self.empListTableView.frame = CGRectMake(0, 0, self.view.bounds.size.width, [employeeListModel count]*90);
        } else {
            self.empListTableView.frame = self.view.bounds;
        }
    }
    [self.empListTableView layoutIfNeeded];
}

Этот метод отлично работает в iOS 8, но вылетает в iOS 7, это происходит из ниоткуда.

1 ответ

Я получил ту же проблему при добавлении ограничений в коде вручную. В коде я делал следующее: из того, что я могу сказать, проблема в том, что при отключении translatesAutoresizingMaskIntoConstraints Решение: Мое решение состояло в том, чтобы переместить все в contentView.

    {
   [self.contentView addSubview:someView];
   [self.contentView addSubview:someOtherView];
   [self.contentView addConstraint:...];
}
Другие вопросы по тегам