我遇到与问题here相同的问题。
看起来与此gif完全相同。
我不是开始解决问题的方法。我已经对UICell进行了细分,并使用了标准的UICell,两者都有相同的结果。我还尝试在编辑模式时将单元格中的图像设置为nil:cell.imageView.image = nil;
任何想法都会受到赞赏,如果需要,我可以发布更多代码...
//索引路径中的行的单元格
(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"Item cell func");
static NSString *CellIdentifier = @"detailCell";
MCTableViewCell *cell = nil;
if (cell == nil)
{
cell = [[MCTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
// Configure the cell...
Item * record = [_itemsArray objectAtIndex:indexPath.row];
cell.imageView.image = [UIImage imageWithData:record.photo];
cell.textLabel.text = [NSString stringWithFormat:@" %@", record.itemName];
cell.textLabel.adjustsFontSizeToFitWidth = YES;
//cell.shouldIndentWhileEditing = NO;
NSLog(@"Detail Record.Name %@", [_itemsArray objectAtIndex:indexPath.row]);
return cell;
}
//编辑单元格
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"Begin editStyle Func");
if (editingStyle == UITableViewCellEditingStyleDelete) {
//UITableViewCellEditingStyleNone
// 1
[tableView beginUpdates];
// Delete the row from the data source
NSLog(@"after Updates editStyle Func");
// Delete item from Table
[tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];
NSLog(@"after Row Animation editStyle Func");
// Delete Item from Database
[self.managedObjectContext deleteObject:[self.itemsArray objectAtIndex:indexPath.row]];
NSError *error;
if (![self.managedObjectContext save:&error]) {
NSLog(@"Save: %@", [error localizedDescription]);
}
[self showObjects];
NSLog(@"End of if stmnt");
// 5
[tableView endUpdates];
}
NSLog(@"End of Function");
}
答案 0 :(得分:0)
这个问题似乎发生在ios7中 在ios8中,工作正常。所以,这可能是一个错误。
要解决此问题,请将自己的UIImageView添加到单元格中,然后使用它而不是UITableVewCell的imageView。