さて、私は各タブにnavigationControllerを備えたタブベースのアプリを持っています。各navigationControllerのルートにいて、ビューをプッシュすると、アニメーションは完全に実行されますが、プッシュされたビューを表示してポップしたい場合、navigationControllerはアニメーション化されますが、ビューはアニメーション化されません。これは私がそれをポップするために使用するものです:
[self.navigationController popViewControllerAnimated:YES];
そしてそれをプッシュするには:
[self.navigationController pushViewController:activityController animated:YES];
なにか提案を?
編集:
ルートコントローラーにtableViewがあります。行を選択するたびに、このコードを実行します
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
ActivityViewController *activityController = [[ActivityViewController alloc] initWithNibName:@"ActivityViewController" bundle:nil];
UIButton *backButton = [UIButton buttonWithType:UIButtonTypeCustom];
[backButton setBackgroundImage:[UIImage imageNamed:@"BackButonItem"] forState:UIControlStateNormal];
[backButton setBackgroundImage:[UIImage imageNamed:@"BackButonItem_Pressed"] forState:UIControlStateHighlighted];
[backButton addTarget:self action:@selector(popBack) forControlEvents:UIControlEventTouchUpInside];
[backButton setFrame:CGRectMake(15, 10, 55, 30)];
UIBarButtonItem *backButtonItem = [[UIBarButtonItem alloc] initWithCustomView:backButton];
activityController.navigationItem.leftBarButtonItem = backButtonItem;
activityController.navigationItem.hidesBackButton = YES;
[self.navigationController pushViewController:activityController animated:YES];
}
これが私のpopBackメソッドです。
- (void) popBack
{
[self.navigationController popViewControllerAnimated:YES];
}