在TableView的特定单元格中重新排序块
问题描述:
我想阻止要重新排序的单元格。在TableView的特定单元格中重新排序块
例如:
我有4行的实现代码如下,但不希望是第一个单元格可以重新排序。
这可能吗?
我试着使用:
if(indexPath.row == 0)
{
[cell setEditing:NO animated:NO];
}
但不起作用。
谢谢。
答
我找到了答案!
您可以使用来自UITableViewDelegate的方法targetIndexPathForMoveFromRowAtIndexPath。
-(NSIndexPath *)tableView:(UITableView *)tableView targetIndexPathForMoveFromRowAtIndexPath:(NSIndexPath *)sourceIndexPath toProposedIndexPath:(NSIndexPath *)proposedDestinationIndexPath{
if (proposedDestinationIndexPath.row == 0) {
return sourceIndexPath;
}
return proposedDestinationIndexPath;
}
答
你UITableViewDataSource应该实现-(BOOL)tableView:canMoveRowAtIndexPath:
并返回NO的indexPath.row == 0
- (BOOL)tableView:canMoveRowAtIndexPath:(NSIndexPath *)indexPath
{
return (indexPath.row != 0);
}
我已经试过了...但没有工作... – 2013-02-27 17:32:57
即细胞无法重新排序,但是当你在编辑按钮单击重新排序其他细胞,它改变了位置也是......我希望它是静态的。 – 2013-02-27 17:36:09