0

我有带有自定义单元格的 UITableView,滑动删除在 iPad 模拟器中工作得很好,但它从来没有在 iPad 设备上工作。

这是我的代码:

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
        return YES;
}

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
        return UITableViewCellEditingStyleDelete;
}

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
    [tableView beginUpdates];
    if (editingStyle == UITableViewCellEditingStyleDelete)
    {
        if(_itemsArray == nil)
            NSLog(@"\n\nNIL ARRAY\n\n");
        NSLog(@"\nindexPath.row = %d\nItemsArray Count:%d",indexPath.row,_itemsArray.count);
        int row = [[[_itemsArray objectAtIndex:indexPath.row]valueForKey:@"itemRow"] integerValue];
        [_itemsArray removeObjectAtIndex:indexPath.row];
        [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
        [[self delegate]didDeletedBillItemRow:row];
    }
    [tableView endUpdates];
}

我还在我的自定义单元控制器中实现了 layoutSubviews:

-(void)layoutSubviews
{
    [super layoutSubviews];
} 

你认为问题是什么?

4

2 回答 2

0

我只在编辑期间将选择模式的属性更改为“编辑期间的单选”而不是“编辑期间的多选”,我现在可以完美地使用滑动删除来删除行。

于 2014-06-19T10:57:00.557 回答
0

可能对你有用,也可能对你不起作用。我花了一段时间弄清楚为什么它对我不起作用。我意识到这是因为启用的单元格用户交互已关闭。我不知道为什么它仍在模拟器上工作,但这为我修复了它。

于 2014-06-19T05:04:43.010 回答