当我打电话
[tableView deleteRowsAtIndexPaths:@[indexPath]
withRowAnimation:UITableViewRowAnimationNone];
对于传递给withRowAnimation
参数的常量并不重要,动画总是相同的,在淡出时,行在其上方的行后面滑动。我想要UITableViewRowAnimationRight
行为,但我也想知道为什么会出现故障。即使我将UITableViewRowAnimationNone
作为参数传递,如上所述,动画仍然会触发。
这是方法的完整代码,以防我无意中在其他地方做错了
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (editingStyle == UITableViewCellEditingStyleDelete) {
// Delete file represented by row
NSString *fileDirectoryString = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *filePath = [fileDirectoryString stringByAppendingPathComponent:self.files[indexPath.row]];
NSError *error;
[[NSFileManager defaultManager] removeItemAtPath:filePath error:&error];
if (!error) {
[tableView beginUpdates];
[tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone];
[tableView endUpdates];
} else {
NSLog(@"%@", [error localizedDescription]);
}
}
}