У меня есть 3 segues до 3 разных просмотров. 2 реализованы без проблем, а когда создается третье, что возникают проблемы.
У меня есть следующий метод didSelectRowAtIndexPath:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
NSLog(@" ---------- did select row");
if(indexPath.section == 0){
if(indexPath.row == [self.data count]-1){
//prior to adding this, everything works
[self performSegueWithIdentifier:@"MoreComments" sender:self];
}else{
[self performSegueWithIdentifier:@"FriendView" sender:friend];
}
}else if(indexPath.section == 1){
if(indexPath.row == [self.data2 count]-1){
[self performSegueWithIdentifier:@"MorePosts" sender:self];
}else{
[self performSegueWithIdentifier:@"FriendView" sender:friend];
}
}
}
У меня есть следующий метод prepareForSeque:
-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([segue.identifier isEqualToString:@"MorePosts"]){
MorePostsViewController *mfamvc = segue.destinationViewController;
mfamvc.data = self.data;
}else if([segue.identifier isEqualToString:@"FriendView"]){
FriendViewController *fvc = segue.destinationViewController;
fvc.friend = friend;
}else if([segue.identifier isEqualToString:@"MoreComments"]){
MoreCommentsViewController *mcvc = segue.destinationViewController;
mcvc.data = self.data2;
}
}
Прежде чем управлять перетаскиванием из моей ячейки в последнее представление, я вижу, что моя программа хитов didselectrow, а затем prepareforseque. Это делает работу над навигацией идеальной.
Как только я управляю перетаскиванием из своей ячейки в контроллер MoreCommentsViewController, я начинаю видеть ошибку:
Вложенная анимация push может привести к повреждению панели навигации Завершение навигации в непредвиденном состоянии. Дерево видимости панели навигации может быть повреждено.
Я замечаю, что теперь также prepareforseques вызывается дважды, с подготовкой к вызову сначала, затем didselectrow, затем снова подготовьте для повтора.
Что я делаю неправильно, чтобы условно перейти к этим различным представлениям?