В моем проекте я использовал код для обращения к кнопке «Назад» следующим образом.navigationController.viewControllers Работает по-разному в iOS 8.2
NSMutableArray *VCs = [NSMutableArray arrayWithArray: self.navigationController.viewControllers];
if ([[VCs objectAtIndex:[VCs count] - 2] isKindOfClass:[LoginViewController class]])
{
[VCs removeObjectAtIndex:[VCs count] - 2];
[VCs removeObjectAtIndex:[VCs count] - 2];
}
[self.navigationController setViewControllers: VCs];
В iOS 7 Я получаю желаемый результат. Но для iOS версии 8.2 значение в VC измененных массивов - это только текущий или topViewController в стеке. Но кнопка «Назад» переместит вас ко всем предыдущим диспетчерам просмотра. Но ни один из них не присутствует в стеке навигации. Есть ли какие-либо изменения в обработке навигации в ios8?
Я хочу удалить диспетчер просмотра экрана входа из стека, чтобы при нажатии кнопки «Назад» он не вернется на экран входа в систему. Я столкнулся с этой проблемой только в iOS 8.2 (может быть в iOS 8 и выше). Что может быть проблемой?
Edit:
В prepareForSegue:, я использую следующий код:
if([[segue identifier] isEqualToString:@"mediaDetailSegue1"])
{
MovieDetailViewController *movieDetail;
if(isIOS8SystemVersion)
{
movieDetail = ([[segue destinationViewController]viewControllers][0]);
}
else
{
movieDetail = [segue destinationViewController];
}
movieDetail.videoData = [_mediaContentArray objectAtIndex:selectedIndex];
}
так для IOS версии больше, чем 8, код
movieDetail = ([[segue destinationViewController]viewControllers][0]);
называется , Я думаю, что это вызывает проблему. Я делаю это неправильно?
Вы вошли в массив на обеих версиях ОС и тот же сценарий тест? – Wain
yes.In мой iphone 4s с ios 7.2, все viewControllers отображаются. Но когда я подключаю iphone 5s с ios 8.2, консоль массива является one.only topViewcontroller есть в массиве. Но кнопка back будет перемещаться по вам для всех предыдущих контроллеров view.But, но ни один из них не присутствует там в стеке навигации. Есть ли какие-либо изменения в обработке навигации в ios8? – abhi1992
Довольно большая ошибка, если она есть. У вас есть другой код, который изменяет стек? – Wain