Xcode中的ViewController问题?

时间:2013-01-14 23:14:10

标签: objective-c xcode uiviewcontroller

我对Xcode很新,但我遇到了一些问题。我有一个选项卡式视图控制器,一个子选项卡有一个UITableView。在单击单元格时,我需要打开TableData(一个ViewController)。出于某种原因,我只是得到一个黑屏。然后我将代码更改为:

TableData *newView = [self.storyboard instantiateViewControllerWithIdentifier:@"TableData"];
[self presentViewController:newView animated:YES completion:nil];

但我在Xcode中收到错误SIGABRT。我该如何解决这个问题?

这样可行,但是给了我一个黑屏:

TableData *view = [TableData alloc];
view.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController: view animated:YES];

1 个答案:

答案 0 :(得分:2)

只需在故事板中为segue创建一个标识符,然后使用:

[self performSegueWithIdentifier:@"yourTableViewStoryboardSegueIdentifier" sender:self];

更新:

问题很可能是由于用户从tableView中获取了无效行。为了获取行号,您需要做的就是:

int rowNumberSelected = indexPath.row;

至于他的第二个代码片段,它只显示黑屏的原因是因为他实际上并没有将它连接到故事板中的viewController。他只是简单地分配代码。如果他通过代码添加了子视图,那么它们会出现但不会出现在故事​​板中。

由于用户正在使用Storyboard,因此最好只使用segues和dismissals。