UITableViewでreloadDataを実行すると選択解除アニメーションがキャンセルされる
下記の操作パターンがよくあると思います。
詳細画面に移動
↓
何かを編集
↓
戻る
↓
reloadData
前の画面に戻ったとき選択したセルがフェードアウトするアニメーションがキャンセルされてしまうので、reloadDataを実行後に選択解除アニメーションを再現させます。
- (void)viewWillAppear:(BOOL)animated { NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow]; [self.tableView reloadData]; [self.tableView selectRowAtIndexPath:indexPath animated:YES scrollPosition:UITableViewScrollPositionNone]; [self.tableView deselectRowAtIndexPath:indexPath animated:YES]; [super viewWillAppear:animated]; }
あまり美しくないですね…。他にいい方法があれば誰か教えて頂けるとうれしいです。