具有2个API错误的共享实例:无法将self添加为子视图

时间:2014-07-14 15:55:18

标签: ios7 self xcode-storyboard performselector

使用2个不同的API在视图控制器逻辑上遇到问题。第一个API是Quickblox,因为它们需要首先加载我在AppDelegate.m中的didFinishLaunchingWithOptions。这工作正常。当我尝试转换到第二个API时,我遇到了麻烦。

第一个错误:'NSInvalidArgumentException',原因:'Storyboard()不包含带有标识符'sightingsTableViewController'的视图控制器<'

为了纠正我在Storyboard中添加了'sightingsTableViewController'。去了SightingsTableView Controller然后将'sightingsTableViewController'添加到Storyboard ID Identity。这修复了错误...

应用程序更进一步,然后出现第二个日志错误:

...嵌套推送动画可能导致导航栏损坏

...对于开始/结束外观转换的不平衡调用   。   在意外状态下完成导航过渡。导航栏子视图树可能已损坏。 当我尝试退回到之前的屏幕时,错误是错误的,我得到堆栈转储错误:

的开始/结束外观过渡的不平衡调用

由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'无法将self添加为子视图'故事板视图控制器逻辑错误,并希望更好地理解如何更正。

在将延迟更改为3秒后,我可以显示SightingsTableViewController。

[self performSelector:@selector(showProximityServicesSwitchViewAndNavigationBar) withObject:nil afterDelay:1.0];

[self performSelector:@selector(initializeFyxService)withObject:nil afterDelay:3.0];

Storyboard Layout

1 个答案:

答案 0 :(得分:0)

我没有点击“登录”按钮来创建对Sightings Table View Controller的推送,而是单击了SignInViewController并将推送拖到了Sightings TVC。

我不知道为什么这会解决问题,但我现在没有收到任何错误或堆栈转储。我很想知道为什么这种改变会解决不平衡的错误。