ios - UITableView:如何禁止将项目拖动到特定行?

标签 ios uitableview

我有一个带有可拖动行的 UITableView,我可以添加/删除项目。数据源是一个 NSMutableArray。

现在,如果我移动带有“添加新功能”的行,应用程序会崩溃,因为数据源较小,因为尚未添加此类行。

所以我修改了这段代码:

- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath {
        if (indexPath.row >= [dataList count]) return NO;
        return YES;
    }

现在我不能再移动它了。但是,我仍然可以在该行之后移动其他行,因此代码崩溃。

我该如何解决这个问题?有没有办法禁用拖动 “到” 特定行,而不仅仅是从

谢谢

最佳答案

这正是 UITableViewDelegate 方法

-tableView:targetIndexPathForMoveFromRowAtIndexPath:toProposedIndexPath:

是为了。它适合你的目的吗? Here's文档。

关于ios - UITableView:如何禁止将项目拖动到特定行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6997081/

相关文章:

ios - 在 Sketch 3 中导出所有 iPhone

Swift 以编程方式调整 ViewController 中的 UITableView 大小或最小化

ios - UITableView-删除部分中的最后一个单元格

javascript - 在 div 内捏合/缩放但不是整个页面

objective-c - 如果 CGImageCreate 的数据提供者使用由应用程序创建的数组,那么对 CGImageCreate 的正确调用会是什么样子?

ios - NSCoding 自定义对象子数组未持久化

ios - 使单元格粘在表格 View 的底部

ios - cellForRowAtIndexPath 中的索引频繁出界 - Obj C

iphone - 来自字符串数组 iOS 的索引表

ios - 如何为表格上的不同 URL 组织详细信息 Controller webview?