Shows blank view when loading view controller from StoryBoard
我有一个已经在App Store中的项目。
现在,我需要使用故事板向项目添加更多屏幕。该项目以前是使用nib文件实现的。
我已经为添加的新视图控制器创建了情节提要。当调用视图控制器时,它几乎变成空白,我为该控制器添加的所有视图都没有出现。
我在下面的代码中添加了如何从故事板上加载视图控制器的代码。
1 2 3 4 5
| -(void)gotoEventsScreen
{
EventsListViewController* eventsScreen = [[UIStoryboard storyboardWithName:@"EventsScreen" bundle:nil] instantiateInitialViewController];
[self.navigationController pushViewController: eventsScreen animated:YES];
} |
注意:我已经将EventsListViewController设置为initialviewcontroller,并且它也具有标识符。
我也尝试加载标识符,但仍然显示空白屏幕。
- 您是否已正确链接视图控制器?
-
@HarikrishnanT是的,在检查器中,我给出了自定义类名称以及标识符
-
只是要检查您是否有导航控制器问题(例如断链),请尝试以模态形式显示您的情节提要vc,仅供测试。
-
您是否提供了情节提要ID?如果没有提供演示图板ID,则输入EventsListViewController* eventsScreen = [self.storyboard instantiateViewControllerWithIdentifier:@"EventsScreen"];,其中" EventsScreen "是演示图板ID
-
@HarikrishnanT是的,我已经添加了StoryBoardID。但是问题是一样的
-
@CalinChitu我已经检查了所有可能的方式。但是,它不能解决我的问题
-
如果您使用的是导航控制器,那么您将哪个视图控制器设置为root viewcontroller?
-
@HarikrishnanT根视图控制器是另一个未使用情节提要的类
-
如果您要切换到情节提要,我建议您完全使用情节提要。混合xib和故事板将导致很多复杂性。
-
您是否尝试过将EventsListViewController设置为根视图控制器?是否正确显示?
-
@HarikrishnanT我现在有很多视图控制器,无法将所有xib转换为情节提要。对于新添加的控制器,我想使用情节提要。你认为这可能吗
-
这是可能的,即使您将xib用作rootview控制器,也可以在情节提要中推送视图控制器。您可以在xib和故事板中来回移动。做一些检查:检查该方法是否被触发,并通过将情节提要视图控制器作为根视图控制器,来检查其是否正确显示。还要交叉检查nibname。
-
@HarikrishnanT我检查了所有名称都很好。
-
如果您将其设置为rootviewcontroller,它是否正在加载? ViewController中所有显示为空白的东西是什么?检查是否有任何视图与其他视图重叠。
-
@HarikrishnanT加载视图后,我尝试在self.view中打印子视图的计数..它始终显示1…通过我在其上拥有7个以上的视图
-
您是否已添加情节提要以定位应用程序的成员身份?
-
@HarikrishnanT它已经被添加到目标成员中。
-
您的代码段是正确的。因此,问题必须出在其他地方。我试图弄清楚这是否是引起任何常见错误的原因。抱歉,无法解决问题。如果找到任何解决方案,请回答您自己的问题,以便对他人有所帮助。我确信这是某个地方的小错误。我只是尝试了一下,它非常适合我。
-
@HarikrishnanT我尝试做一些小例子,但它在那里工作。在这个项目中可能缺少一些东西...如果我找到解决方案,我将尝试更新它
实际上,我的项目基类视图控制器存在一些问题,其中包括initWithCoder方法,该方法未调用其超类方法。