У меня есть 3 навигации на viewcontroller, где A представляет собой модальный контроллер B, который представляет modal controller C все через segues. C имеет разматывание назад к B. Он также отстегивается назад к A. Когда я выполняю действие для C, чтобы расслабиться до B, он разматывается, но затем появляется B и возвращается к A. Это не то, что я хочу, я хочу это в этом случае, чтобы остаться на B. Ниже приведены segues VC C.
unindCancel - это когда пользователь нажимает на collectionViewCell и возвращается к VC B. prepareForUnwind - это стандартная кнопка "Отмена" для VC A.
Ниже приведен код для didSelectItem, чтобы вызвать разматывание в VC C. Ниже, которое готовитForSegue в VC C.
-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
[self performSegueWithIdentifier:@"unwindCancel" sender:self];
}
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([segue.identifier isEqualToString:@"unwindCancel"]) {
GalleryDetailViewController *detailVC = segue.destinationViewController;
detailVC.colletionCount = self.indexPathToPass;
}
}
VC B разматывается в .m файле
-(IBAction)unwindCancel:(UIStoryboardSegue *)segue{
[self.collectionView scrollToItemAtIndexPath:self.colletionCount atScrollPosition:UICollectionViewScrollPositionLeft animated:YES];
}
VC Откат в .m файле
-(IBAction)prepareForUnwind:(UIStoryboardSegue *)segue {
}