_shouldShowMenuForCell 中意外的零索引路径
Unexpected nil index path in _shouldShowMenuForCell
有人知道这个问题是怎么回事吗?我的手机因此停止滑动。
[Assert] Unexpected nil index path in
_shouldShowMenuForCell:, this should never happen. Cell ; baseClass = UITableViewCell; frame = (0 97.5; 375 130); alpha = 0; hidden = YES;
autoresize = W; gestureRecognizers = ; layer
= >
求助!!!
我将滑动方法从 gestureRecognizer 更改为 ScrollView,一切正常。
如果您的单元格是由 - 创建的
[[[NSBundle mainBundle] loadNibNamed:nibName owner:self options:nil] lastObject];
并使用 addSubview 来显示它。会出现这个问题。
我的解决方案是使用 "addSubview:cell.contentView" 但没有 "addSubview:cell"
即使使用手势识别器创建滑动单元格,我也已经找到了解决方案,在我的情况下,问题 ("Unexpected nil index path in _shouldShowMenuForCell:, this should never happen. ") 的出现是因为这个功能:
override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
for subview in self.subviews.reversed() {
if subview.frame.contains(point) {
return subview
}
}
return super.hitTest(point, with: event)
}
提示:工作解决方案:
Capturing touches on a subview outside the frame of its superview using hitTest:withEvent:
有人知道这个问题是怎么回事吗?我的手机因此停止滑动。
[Assert] Unexpected nil index path in _shouldShowMenuForCell:, this should never happen. Cell ; baseClass = UITableViewCell; frame = (0 97.5; 375 130); alpha = 0; hidden = YES; autoresize = W; gestureRecognizers = ; layer = >
求助!!!
我将滑动方法从 gestureRecognizer 更改为 ScrollView,一切正常。
如果您的单元格是由 - 创建的 [[[NSBundle mainBundle] loadNibNamed:nibName owner:self options:nil] lastObject];
并使用 addSubview 来显示它。会出现这个问题。
我的解决方案是使用 "addSubview:cell.contentView" 但没有 "addSubview:cell"
即使使用手势识别器创建滑动单元格,我也已经找到了解决方案,在我的情况下,问题 ("Unexpected nil index path in _shouldShowMenuForCell:, this should never happen. ") 的出现是因为这个功能:
override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
for subview in self.subviews.reversed() {
if subview.frame.contains(point) {
return subview
}
}
return super.hitTest(point, with: event)
}
提示:工作解决方案: Capturing touches on a subview outside the frame of its superview using hitTest:withEvent: