Раскадровка - подключение к контроллеру представления, затем нажатие вызывает несколько нажатий
В Objective C / iOS;
У нас есть процесс, похожий на этот (настроен в раскадровке xcode);
Контроллер представления меню -> введите код -> обработать / проверить -> представить код ошибки
(->) стрелки обозначают push
настройка segue в раскадровке
Когда в состоянии сбоя, я хочу, чтобы поп к Enter in a code
просмотр контроллера.
UIViewController *vc = nil;
NSUInteger index=0;
for (UIViewController *viewController in self.navigationController.viewControllers) {
if ([viewController isKindOfClass:[SomeViewController class]]) {
vc = viewController;
break;
}
index++;
}
if (vc) {
dispatch_async(dispatch_get_main_queue(), ^(void) {
[self.navigationController popToViewController:vc animated:YES];
});
return;
}
Это возвращает меня к ВК, на который я хочу пойти.
За исключением случаев, когда я нажимаю на Enter code
страница делает еще 3 или 4 "толкает", когда это должно быть только 1.
Нужно ли мне расслабиться? Я попытался очистить стек контроллера навигационных представлений и даже попытался избавить его от последнего активного контроллера представлений - оба возвращают пустую или черную рамку окна просмотра.
Почему выталкивание контроллера представления в стеке навигации влияет на segues в моем контроллере представления до точки, где всякий раз, когда я пытаюсь сделать push segue
действие, которое он будет пытаться поместить несколько контроллеров представления в стек?
1 ответ
Оказывается, у меня была следующая проблема
Нажатие кнопки вызывает переходное действие в раскадровке. Я делал то же самое переходное действие в коде кнопки, поэтому нажимал несколько раз.
Теперь я решил эту проблему