CompleteHandlerのないアニメーションにCATransactionでCompleteHandlerを追加する

タイトルの通りです。 CompleteHandlerのないアニメ―ションにCompleteHandlerを追加します。 下の例ではUITableViewediting modeの終了アニメーション後に処理を追加しています。

CATransaction.begin()
CATransaction.setCompletionBlock { () -> Void in
// some code
}
setEditing(false, animated: true)
CATransaction.commit()

対象になるアニメーションの処理(setEditing)をCATransaction.begin()CATransaction.commit()で囲んで、CATransaction.setCompletionBlockにやりたい処理を書きます。