以编程方式创建的segue在performSegueWithIdentifier:上崩溃应用程序,我真的不想使用故事板。
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
ViewController *viewController = [[ViewController alloc] init];
self.segue = [[UIStoryboardSegue alloc] initWithIdentifier:@"showInfo" source:self destination:viewController];
//change the background color to white
self.view.backgroundColor = [UIColor whiteColor];
//create the table view
UITableView *tableView = [[UITableView alloc] init];
//initialize the data source and the delegate to self - as the methods are going to be specified in this script
tableView.dataSource = self;
tableView.delegate = self;
//register the class for the tableView
[tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"cell"];
//now assign the table view to our our viewController's property
self.view = tableView;}
答案 0 :(得分:2)
无法以编程方式创建Segues。 Apple的文档说:
您不直接创建segue对象。相反,故事板运行时在必须在两个视图控制器之间执行segue时创建它们。
initWithIdentifier:source:destination:方法用于子类化。
那就是说,如果你不使用故事板,你无论如何都不需要segues。只需在需要时实例化并显示目标视图控制器。