我有UINavigationController
指向UITableViewController
(项目列表),其中有一个从单元格到另一个UITableViewController
的segue(用于编辑项目的屏幕)。
首次运行应用程序时,我想跳过第一个列表,然后立即转到第二个屏幕,编辑新项目。
问题是我需要传递第一个UITableViewController
,因为我需要能够返回到那个(或者是否有办法设置后退按钮指向的控制器?)。 / p>
我尝试过的事情都失败了:
在shouldPresentNewItem
和UINavigationController
设置布尔值viewDidLoad
,如果设置为true
,则显示第一个UITableViewController
,设置布尔值,以便我可以进入编辑屏幕。
在self.navigationController!.popToViewController(arr[index] as UIViewController, animated: true)
s UINavigationController
中使用viewDidLoad
。由于self.navigationController
为nil
,因此出现错误。 (我不知道为什么会这样)
如何做到这一点?
答案 0 :(得分:1)
在导航控制器中设置一些布尔值,表示您将显示编辑屏幕,并且在viewDidLoad
中只需按动态编辑视图控制器:
- (void) viewDidLoad {
[super viewDidLoad];
if (self.presentEditScreen) {
self.presentEditScreen = NO;
EditViewController *e = [[DetailViewController alloc] init];
[self pushViewController:e animated:NO];
}
}
答案 1 :(得分:0)
firstViewController *objFirstViewController = [[firstViewController alloc]initWithNibName:@"firstViewController" bundle:nil];
[self.navigationController pushViewController:objFirstViewController animated:No];