我在尝试删除视图中的右行时遇到问题。我有一个tableview与3个动态创建的单元格分组,而且,我正在使用编辑模式。在每个部分中添加更多行并删除它们时,一切正常,但是当我尝试删除特定行时,它总是删除最后一行。假设我已经添加了行1,2,3(除了de original one)并且我想删除数字2,它总是删除数字3.我还有一个方法可以自动为每个创建的新行提供一个标记。我怎么能通过删除问题?有任何想法吗?我知道我必须以某种方式识别已删除行的标记才能使其正常工作...每个部分都有一行,然后是200行和200行...这是我的代码:
-(void)tableView:(UITableView *)TableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle
forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (editingStyle == UITableViewCellEditingStyleDelete)
{
int i=0;
for (i=0; i<myarray.count; i++)
{
UITableViewCell *aux=[myarray objectAtIndex:i];
if (aux.tag >= 101 && aux.tag < 200 && indexPath.section==0) {
[myarray removeObjectAtIndex:i];
[Table reloadData];
}
if (aux.tag >= 201 && aux.tag < 300 && indexPath.section==1) {
[myarray removeObjectAtIndex:i];
[Table reloadData];
}
if (aux.tag >= 301 && indexPath.section==2) {
[myarray removeObjectAtIndex:i];
[Table reloadData];
}
感谢
答案 0 :(得分:0)
使用此方法并将其替换为您的方法:
-(void)tableView:(UITableView *)TableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (editingStyle == UITableViewCellEditingStyleDelete)
{
[myarray removeObjectAtIndex:indexPath.section];
[Table reloadData];
}
}