У меня есть вложенный UIStackView, который, когда я нажимаю кнопку, создается. Чтобы перейти к более подробным сведениям, у меня есть UIStackView, который выполняет итерацию через NSMutableArrayList, полный CustomUIStackViews, и добавляет их в asposedSubviews. Когда инициалы CustomUIStackViews запускаются, они также выполняют итерацию через свой собственный NSMutableArrayList, заполненный UIViews, и добавляет их как builtSubviews.Состояние гонки UIStackView?
Самое странное в том, что после того, как все мои для петли выполнены у меня есть NSLog:
NSLog(@"parentstackview height is %f",_parentStackView.frame.size.height);
, который возвращает 0 (что она не должна, высота должна быть 1861 года после того, как все stackviews шоу которые они явно видят в симуляторе).
Но если я создаю этот метод:
- (void)testMethod{
NSLog(@"parentstackview height is %f",_parentStackView.frame.size.height);
}
и заменить NSLog от ранее с этим:
[self performSelector:@selector(testMethod) withObject:nil afterDelay:1.0];
Затем он возвращается 1861 года точно, как и положено, после секундной задержки 1.
Почему 1 секунда задержки имеет значение?