在uitableview单元格上留下滑动删除按钮打开然后返回导致崩溃
Posted
技术标签:
【中文标题】在uitableview单元格上留下滑动删除按钮打开然后返回导致崩溃【英文标题】:Leaving swipe to delete button open on uitableview cell then going back causes crash 【发布时间】:2014-12-05 07:40:26 【问题描述】:我已经在我的一个表格单元格上滑动删除。如果我在表格单元格上向右滑动以显示删除按钮并通过按后退按钮弹出视图,则应用程序因线程 1 崩溃:EXC_BAD_ACCESS。我已经将这一点作为它崩溃的原因。为什么会这样?
这是我点击返回https://www.dropbox.com/s/ggn4jqr0ox0tnta/Screenshot%202014-12-04%2023.39.25.png?dl=0时的样子
【问题讨论】:
添加异常断点以查找应用程序崩溃的位置,这将引导您走向正确的方向。 【参考方案1】:在viewWillDisappear
中设置UITableview
结束编辑为NO
[tableview setEditing:NO];
【讨论】:
似乎只发生在 Swift 项目中。【参考方案2】:从表格视图中删除单元格的位置。您还必须从数组中删除数据。
【讨论】:
我什至没有按删除键。我只是向右滑动【参考方案3】:当您向右滑动时,可能是您正在弹出控制器。因为视图正在消失,所以您必须编写 NANNAV 的行。
【讨论】:
【参考方案4】:这是因为表的委托和数据源是简单的分配指针,而不是弱的。所以删除视图控制器后,包含表仍然可以向控制器发送事件。为避免这种情况,您可以在 dealloc 方法中手动将 tableview 委托和 datasouce 设置为 nil。顺便说一句,这不仅发生在表格中。
【讨论】:
以上是关于在uitableview单元格上留下滑动删除按钮打开然后返回导致崩溃的主要内容,如果未能解决你的问题,请参考以下文章