Почему layoutSubviews НЕ будет автоматически вызываться при просмотре, когда установлен его кадр?

У меня есть представление. Это часть большого и сложного проекта. Когда рамка моего представления установлена, макеты не отображаются автоматически.

Играя с этим, я попытался применить следующий метод:

-(void) setFrame: (CGRect) frame {
    NSLog (@"setting frame");
    [super setFrame: frame];
    [self setNeedsLayout];
}

В этот момент макет был переделан, когда был установлен кадр, как и ожидалось. И если я прокомментировал строку setNeedsLayout, макет не был выполнен. Кроме того, когда я нажимаю "вступать" в строку, где вызывается супер, отладчик ничего не делает. Насколько я могу судить, супер метод setFrame не переопределяется.

FWIW, я также сделал небольшой тестовый проект, в котором я изменил рамку представления. В этом случае layoutSubviews вызывался, когда я это делал. [setNeedsLayout не был вызван в моем тестовом проекте.] Так что что-то в моем большом проекте меняет поведение. Но я не знаю, что это такое.

Может кто-нибудь объяснить, что может происходить?

РЕДАКТ.: для уточнения, изменение рамки меняет высоту представления. Ширина не изменяется.