我在没有导航控制器的情况下使用UITableView
。我的问题是,当我点击一个特定的单元格时,它不会推送到另一个UIViewController
。
这是我的代码,
-(void)goToMyView
{
UIStoryboard *sb = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
TOMenuViewController *vc = [sb instantiateViewControllerWithIdentifier:@"MyViewController"];
[self.navigationController pushViewController:vc animated:YES];
}
如何移动到另一个视图控制器并从中返回。
答案 0 :(得分:2)
而不是这行代码:
[self.navigationController pushViewController:vc animated:YES];
使用以下代码行:
[self presentViewController:vc animated:YES completion:nil];
如果要在新视图控制器中返回旧视图控制器,请使用:
[self dismissViewControllerAnimated:YES];
对于动画,在呈现视图控制器之前使用:
vc.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
答案 1 :(得分:0)
尝试使用prepareForSegue:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
//you have to give an id to segue, in storyboard
if ([[segue identifier] isEqualToString:@"detail"]) {
//passing strings or whatever you want here so:
[segue.destinationViewController setStringDetail: yourString];
}
在detailViewController中自动创建后退按钮
答案 2 :(得分:0)
在这里看到我的答案,如何将模态segue的动画更改为推送segue。
Pushing a view to a UINavigationController that's not in the same view hierarchy