iPad 肖像中 <UITableView> 对 begin/end 外观转换的不平衡调用
Unbalanced calls to begin/end appearance transitions for <UITableView> in iPad portrait
我的应用程序的 iPad 版本使用 UISplitViewController,我在两个视图控制器上加载了 UINavigationControllers。在某些事件中,两个视图控制器都会推送和弹出新控制器。当我横向使用该应用程序时,一切正常,而当我纵向使用它时,我得到:
Unbalanced calls to begin/end appearance transitions for
iPuja.MonastersAndCentersTableViewController: 0x18d7b020.
notwithstanding everything seems to work fine, apart of the error.
这就是我从细节一中弹出主控制器的方式 (Swift):
@IBAction func dismiss(sender: AnyObject) {
self.navigationController?.popViewControllerAnimated(true)
(self.splitViewController?.viewControllers[0] as? UINavigationController)?.popViewControllerAnimated(true)
}
这就是我推动它的方式 (objective-c):
if([[[UIDevice currentDevice] model] isEqualToString:@"iPad"]){
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"StoryboardiPad" bundle: nil];
UIViewController *controller = [mainStoryboard instantiateViewControllerWithIdentifier: @"editCenters"];
[self.splitViewController.viewControllers[0] pushViewController:controller animated:YES];
}
如果我跳过弹出主控制器我不会出错,但是当我显示它时当然不会弹出主细节。
有趣的是,如果我通过拖动将主控制器短暂显示为纵向,则不再出现错误,直到我将其旋转为横向并再次旋转为纵向。
我通过将主控制器上的操作延迟到它显示的时间来解决这个问题。代码有点不太优雅,但是warning没有了
我的应用程序的 iPad 版本使用 UISplitViewController,我在两个视图控制器上加载了 UINavigationControllers。在某些事件中,两个视图控制器都会推送和弹出新控制器。当我横向使用该应用程序时,一切正常,而当我纵向使用它时,我得到:
Unbalanced calls to begin/end appearance transitions for iPuja.MonastersAndCentersTableViewController: 0x18d7b020. notwithstanding everything seems to work fine, apart of the error.
这就是我从细节一中弹出主控制器的方式 (Swift):
@IBAction func dismiss(sender: AnyObject) {
self.navigationController?.popViewControllerAnimated(true)
(self.splitViewController?.viewControllers[0] as? UINavigationController)?.popViewControllerAnimated(true)
}
这就是我推动它的方式 (objective-c):
if([[[UIDevice currentDevice] model] isEqualToString:@"iPad"]){
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"StoryboardiPad" bundle: nil];
UIViewController *controller = [mainStoryboard instantiateViewControllerWithIdentifier: @"editCenters"];
[self.splitViewController.viewControllers[0] pushViewController:controller animated:YES];
}
如果我跳过弹出主控制器我不会出错,但是当我显示它时当然不会弹出主细节。
有趣的是,如果我通过拖动将主控制器短暂显示为纵向,则不再出现错误,直到我将其旋转为横向并再次旋转为纵向。
我通过将主控制器上的操作延迟到它显示的时间来解决这个问题。代码有点不太优雅,但是warning没有了