以编程方式定义和执行segue
问题描述:
我正在使用Storyboard,并且我有20个View Controller,并且它们在角落都有相同的“Settings”按钮。点击它会执行一个Segue到另一个VC,我只是为了回到原来的版本而放弃。以编程方式定义和执行segue
问题是我将不得不从ctrl-drag从所有的风险投资组合,这使得一个非常凌乱的故事板。是否可以实际添加它们?
我试图提出他们,而不是当我解雇我只是得到一个黑屏。使用下面的;
settingsViewController *settingsVC = [[settingsViewController alloc]init];
[self presentViewController:settingsVC animated:YES completion:nil];
然后我就这样解雇;
[self dismissViewControllerAnimated:YES completion:nil];
答
首先,通过使用ALLOC初始化你完全绕过故事板这就是为什么你得到一个黑色的屏幕,故事板添加了UI给它创造settingsVC。
然而,你仍然可以做到没有残疾。
首先要做的,在故事板。转到设置控制器,并在属性检查器中给它一个标识符。像“SettingsViewController”。
现在,在你设置按钮动作......
- (IBAction)settingsButtonPressed
{
UIViewController *settingsViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"SettingsViewController"];
[self presentViewController:settingsViewController animated:YES completion:nil];
}
这将使用故事板创建视图控制器,这样你就可以用它来代替所有UI呈现它。
+0
你会如何初始化一个自定义的init方法? –
什么类型的segue是? '定制','推','模态'? –
在故事板中,我使用Modal,这些工作正常,但我想要最小化Storyboard中的箭头。这个“设置”对于这个presentViewController来说显得很好,它只是解散为黑色。 –