UIView layoutConstraint странное поведение, палочки сверху - PullRequest
0 голосов
/ 21 января 2019

У меня есть представление таблицы в качестве подпредставления (contentView - это superview).Он имеет ограничение сверху со значением 190, но он продолжает придерживаться вершины (origin.y равен 0.0) на моем iPhone 6. Однако на моем iPhone X он работает совершенно нормально.

- (void)adjustHeightOfViews {

    //adjust contentview-height to tableview-height
    self.tableViewTopConstraint.active = YES;
    self.tableViewTopConstraint.constant = 190;

    self.tableViewHeightConstraint.constant = 0.0f;
    for (int i = 0; i < [_cellTitles count]; i ++) {
        self.tableViewHeightConstraint.constant += [self.tableView rectForRowAtIndexPath:[NSIndexPath indexPathForRow:i inSection:0]].size.height;

        }        
        self.contentViewHeightConstraint.constant = self.tableViewHeightConstraint.constant + 500.0f;


    self.tableViewTopConstraint.constant = 190;
}

Viewheights установлены в моем методе AdjustHeightOfViews, который я вызываю в viewDidLayoutSubviews (я пробовал здесь вызывать метод в viewDidAppear и везде, не решает проблему).

В чем здесь проблема?

РЕДАКТИРОВАТЬ

Проблема исчезает, когда я отключаю [cell layOutIfNeeded] в моем cellForRow (который мне нужен, конечно), так странно!

-> после этого tableView имеет функционирующую topConstraint

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...