1

在此处输入图像描述

看看那张图片(你可能需要放大它)

在监视窗格中,您会看到 tableView 为空。没有意义。在任何情况下tableView都为null- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath

它并不是真的为空。

编码:

   PO(tableView);
    PO(self.delegate.tvDelegated);
    PO(self.delegate.tvDelegated.dataSource);
    PO(self.delegate.tvDelegated.delegate);
    PO(indexPath);

清楚地表明 tableView 与 self.delegate.tvDelegated 相同,并且它的数据源和委托是 self。

tableView: <UITableView: 0x1ea4c800; frame = (0 0; 320 367); clipsToBounds = YES; autoresize = W+H; gestureRecognizers = <NSArray: 0x1f082f30>; layer = <CALayer: 0x1f29d8d0>; contentOffset: {-0, 10}>
self.delegate.tvDelegated: <UITableView: 0x1ea4c800; frame = (0 0; 320 367); clipsToBounds = YES; autoresize = W+H; gestureRecognizers = <NSArray: 0x1f082f30>; layer = <CALayer: 0x1f29d8d0>; contentOffset: {-0, 10}>
4

1 回答 1

1

根据文档

要显示重新排序控件,您不仅必须设置此属性,还必须实现 UITableViewDataSource 方法 tableView:moveRowAtIndexPath:toIndexPath:。此外,如果数据源实现 tableView:canMoveRowAtIndexPath: 返回 NO,则重新排序控件不会出现在该指定行中。

实施

- (BOOL) tableView: (UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndex toIndexPath:(NSIndexPath *)toIndex
于 2013-06-27T08:52:17.720 回答