我使用自定义UITableViewCell创建了一个UITableView。 在滑动时,我使用
删除最后一行[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
我打开一个新的ViewController来为新单元格提供输入; 即使我执行“deselectRowAtIndexPath:indexPath”,新单元格仍然是灰色的(与滑动后显示的方式相同,删除按钮显示 - 只是它没有向左移动,也没有显示删除按钮)。只有在刷卡删除但取消后才会恢复正常。
我尝试了几件事 tableView.editing = NO; [tableView endEditing:YES]; tableView reloadData tableView reloadInputViews,...此问题仅在iOS 7发生。 在删除之前的所有行后,如何在创建新行时获得常规颜色?
完整代码:
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (editingStyle == UITableViewCellEditingStyleDelete)
{
[tableView deselectRowAtIndexPath:indexPath animated:FALSE];
[_data removeObjectAtIndex:indexPath.row];
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
}
}