是否可以将新的viewController推送到另一个视图控制器中的现有视图?
以下是我的设置:
你可以看到我有一个UITableView。轻触单元格时,将使用此代码推送新的视图控制器;
DetailTableViewController *viewcontroller = [[DetailTableViewController alloc] initWithStyle:UITableViewStyleGrouped];
viewcontroller.item = (MWFeedItem *)[itemsToDisplay objectAtIndex:indexPath.row];
[self presentViewController:viewcontroller animated:YES completion:nil];
[viewcontroller release];
不幸的是,这看起来像这样,坐在顶部的栏顶上说“Will Roberts”
为什么会发生这种情况,因为它显然超出了我将其设置为推出的视图...
答案 0 :(得分:2)
使用
代替“presentViewController”DetailTableViewController *viewcontroller = [[DetailTableViewController alloc] initWithStyle:UITableViewStyleGrouped];
viewcontroller.item = (MWFeedItem *)[itemsToDisplay objectAtIndex:indexPath.row];
[self.navigationController pushViewController:viewcontroller animated:YES];
[viewcontroller release];
或使用模态视图控制器
[self presentModalViewController:viewcontroller animated:YES]
答案 1 :(得分:0)
//使用导航控制器呈现新的视图控制器将对您有所帮助。
DetailTableViewController *viewcontroller = [[DetailTableViewController alloc] initWithStyle:UITableViewStyleGrouped];
viewcontroller.item = (MWFeedItem *)[itemsToDisplay objectAtIndex:indexPath.row];
[self.navigationController presentViewController:viewcontroller animated:YES completion:nil];
[viewcontroller release];
//被修改
DetailTableViewController *viewcontroller = [[DetailTableViewController alloc] initWithStyle:UITableViewStyleGrouped];
UINavigationController *nav1=[[UINavigationController alloc]initWithRootViewController:viewController1];
[self presentModalViewController:nav1 animated:YES];