我看到了所有其他解决方案,但没有一个对我有用。当我启动应用程序时,它工作正常,但是当我单击表项并推送 ViewController 时,屏幕会变黑,并永远保持黑色。这是我的代码:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[tableView deselectRowAtIndexPath:indexPath animated:NO];
ToDoItemViewController *itemViewController = [[ToDoItemViewController alloc] initWithNibName:@"ToDoItemViewController" bundle:[NSBundle mainBundle]];
ToDoItem *itemSelected = [[self toDoItems] objectAtIndex:indexPath.row];
itemViewController.toDoItem = itemSelected;
itemViewController.delegate = self;
[self.navigationController pushViewController:itemViewController animated:YES];
}
Nib 的名称可以,ToDoItemViewController:
- (instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
}
return self;
}
提前致谢
记住,我不使用 Storyboard,我想保留它
编辑
这是我启动第一个 ViewController 的方法
ListadoViewController *listadoViewController = [[ListadoViewController alloc] initWithNibName:@"ListadoViewController" bundle:nil];
CustomNavigationController *navCtrl = [[CustomNavigationController alloc] initWithRootViewController:listadoViewController];
self.window.rootViewController = navCtrl;
最佳答案
我解决了。问题是我实现了“loadView”方法,但我不知道该方法是由iOS实现的,所以我没有调用super,它也没有绘制任何东西。
感谢大家的回复。
关于ios - PushViewController 导致黑屏,没有 Storyboard,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30034326/