我有一个自定义UIViewController
类,我想在按下UITableViewCell
时显示,所以当按下某个特定单元格时,我会收到一个回调。
我的项目是一个基于导航的应用程序,我创建了ViewController
我要在StoryBoard
中显示但它没有连接到它的segue因为它应该从动态调用UITableViewCell
1}}。
ViewController
也设置为Subclassing它的类。
所以现在我正尝试做类似的事情:
[self.navigationController pushViewController:[[AddAccountsViewController alloc]init] animated:YES];
它确实推,但我看到的只是黑屏。使用XIB
我可以单独创建它,但后来我失去了我不想要的4英寸屏幕自动调整行为。
我该怎样管理这个?
答案 0 :(得分:2)
好的,你可以这两种方式。
第一种方式是你正在做的事情,但是你做得不对......
选项1
在storyboard属性窗格中。选择AddAccountsViewController
并将故事板标识符设置为“AddAccountsViewController”;
AddAccountsViewController *controller = [self.storyBoard instantiateViewControllerWithIdentifier:@"AddAccountsViewController"];
[self.navigationController pushViewController:controller animated:YES];
选项2
这是最简单的选择。
在主视图控制器和AddAccountsViewController
之间的故事板中创建一个segue。 CTRL从主控制器的黄色圆圈拖动。
给segue一个像“AddAccountSegue”这样的标识符。
然后在代码中......
[self performSegueWithIdentifier:@"AddAccountSegue" sender:nil];
注意强>
还有其他方法可以做到这一点,但这两个方面最容易解释。
答案 1 :(得分:1)
在动态创建的tableview单元格的故事板中是否有原型?
如果是这样,您可以从单元格原型中按住Ctrl键拖动到目标视图控制器以创建一个segue。
答案 2 :(得分:1)
你可以按住Ctrl + Drag来实现从目的地到源视图控制器的segue。然后在你.m文件中选择tableViewCell后,你可以编写这行代码来定义segue:
[self performSegueWithIdentifier:@"source" sender:nil];
祝你好运!!