【发布时间】:2014-12-04 09:18:16
【问题描述】:
我遇到了一个问题,当我在下面视图中突出显示的表格视图中上下滚动时,上下滚动几下就可以了,然后看似随机地弹回之前的视图(但是不更新屏幕,所以它看起来只是卡在表格视图中)有时在第一次滚动时它也会弹出视图。
除非有人认为有必要,否则我真的不想发布我的整个班级,但如果有人能指出我为什么会发生这种情况,我将不胜感激。
- (void) viewWillDisappear:(BOOL)animated
{
NSLog(@"Is this being dismissed: %d", [self isBeingDismissed]); // returns 0
NSLog(@"isMovingFromParentViewController %d", [self isMovingFromParentViewController]); // returns 0
NSLog(@"viewWillDisappear occured on bookmark table");
}
-(void)willMoveToParentViewController:(UIViewController *)parent {
NSLog(@"This VC has has been pushed popped OR covered"); // this is happening
if (!parent)
NSLog(@"This happens ONLY when it's popped"); // this is happening
}
谁能告诉我一种方法来找出调用 willMoveToParentViewController 或 viewWillDisappear 的方法?我已经暂停了一下调试日志,但它只是在之前说
willMoveToParentViewController 上的断点在线程 1 中显示了这一点
0 [bookmarkTableViewController willMoveToParentViewController:]
1 _popViewControllerNormal
viewWillDisappear 上的断点
0 [bookmarkTableViewController viewWillDisappear:]
1 [UIViewController _setViewApppearState:isAnimating:]
因此,作为总结,我可以使用它向上或向下滚动 10 次,然后它会发生,或者它可能会在第一次滚动时发生,所以在我看来它是随机的。如果有人认为它会帮助我分享我的整个课程,它会有所帮助,但它几乎只是一个通用的表格视图。
编辑
我发现这与segue有关。
当我只使用“显示(例如推送)”时,它让我有导航返回按钮但崩溃。当我执行“显示详细信息(例如替换)”时,它永远不会崩溃,这让我认为我可以伪造导航返回按钮,但我真的很想知道为什么会这样。
编辑 2:
我注意到即使是空白表格列表也会出现问题,因此与此无关。当我在完全空的新表格视图控制器上上下滚动垃圾邮件时,它会执行完全相同的操作。
由于某种原因在滚动区域上下滚动最终会锁定 tableview UI 并调用之前的视图控制器 viewwillappear
编辑 3:
我认为这可能与导航控制器有关,我只是将 hte 项目剥离到它的基本部分,我注意到有时它不是在滚动表格,而是在做侧滑导航返回手势的事情
编辑 4:
是的,我什至无法用objective-c修复它,但它显示https://stackoverflow.com/a/19019924/4056064
【问题讨论】:
标签: ios uinavigationcontroller ios8 xcode6 tableview