我的应用看起来像这样
UINavigationController
,UITableViewcontroller
为RootViewController。
feedsTableViewController = [[ablogFeedsTableViewController alloc] initWithStyle:UITableViewStylePlain];
feedsNavigationController = [[UINavigationController alloc] initWithRootViewController:feedsTableViewController];
feedsNavigationController.delegate = feedsTableViewController;
在我的viewcontroller方法didSelectRowAtIndexPath
我正在调用另一个tableview控制器:
ablogSingleCatTableViewController *singleCatTableViewController = [[ablogSingleCatTableViewController alloc] initWithStyle:UITableViewStylePlain category:[categories objectAtIndex:indexPath.row]];
[[self navigationController] pushViewController:singleCatTableViewController animated:YES];
[singleCatTableViewController release];
这很好。
现在在这个推UITableView中我尝试推送UIView,但这不起作用。
postView = [[ablogPostView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
[[self navigationController] pushViewController:postView animated:YES];
[postView release];
我认为问题出在[self navigationController],因为这个navigationController的委托在我的另一个UITableViewController中。
anybode可以帮助我,如何解决这个问题?
答案 0 :(得分:1)
您不应该使用动画推送多个viewControllers。只应该动画最后一次推送。
另外:您似乎正在尝试将UIView子类推送到navigationController。这不起作用,你应该看到一个警告。您只能将ViewControllers推入堆栈。