在故事板的XCode 4中以模态方式推送视图时出现“不平衡调用开始/结束外观转换”警告
经过对networking的一些研究没有成功,我来这里问你关于我的警告的问题。
其实,我有一个导航控制器的视图V1,我想在V1加载完成后推送一个模态视图V2。 所以我使用performSegueWithIdentifier
方法(我正在使用故事板)。 这是我的代码:
[self performSegueWithIdentifier:@"showConnexionViewSegue" sender:self];
当我编译时,我得到这个警告:
Unbalanced calls to begin/end appearance transitions for <UINavigationController: 0x6849b30>
谁能帮我?
这听起来像你可能正在执行-viewWillAppear:
的segue -viewWillAppear:
因此生成两个-viewWillAppear:
消息没有2个相应的-viewDidAppear
消息。
尝试在-viewDidAppear
执行segue。
我有这个问题,但是我所做的是在一个UIViewController
我已经链接了一个UIButton
Segue,并将其编码到nextBtnPressed:
函数,所以我实际上推一个button按下两个新的UIViewControllers
。 限制它只是一个赛格固定它。 但是经过一番调查才看到,我做了这个翻倍。
“不平衡的呼叫开始/结束外观转换为'
说animation是在最后一个相关的animation没有完成之前开始的。 那么,在推新的视窗控制器之前,你是否会popup视窗控制器? 或者可能会跳到根? 如果是的话,尝试这样做没有animation,即[self.navigationController popToRootViewControllerAnimated:NO];
看看这是否解决了这个问题,在我的情况下,这个伎俩。
原因是多方面的,对于上下文和编程非常具体。 例如,我正在做的是
- 初始化一个声音文件,播放(asynchronous)1.4秒,
- 使animation定时到1.4秒,使图像在屏幕上移动,
- 在步骤2之后将计时器设置为1.4秒,推动视图控制器。
我发现的是,如果我没有一个接一个的说明这三个步骤的话(如果我把它们混合起来),那么我得到错误“不平衡的呼叫…”。 另外,如果我把视图控制器的时间推到less于1.4秒,我也会收到消息。
因此,请检查程序指令的顺序和时间是否正确。
- 基于故事板模式的login屏幕示例
- 在新的视图添加到层次结构中时,在屏幕上查看resize和重新定位本身
- STORYBOARD EXCEPTION – Storyboard不包含带标识符的视图控制器
- instantiateInitialViewController和instantiateViewControllerWithIdentifier之间有什么区别?
- 推导UIViewController没有导航控制器
- 在TabBarViewController的Tabs之间传递数据
- 如何在没有导航控制器的情况下将导航栏添加到视图
- 如何打开/closures故事板中单个视图控制器的自动布局
- 以编程方式更改storyBoard的rootViewController