willAnimateRotationToInterfaceOrientation:duration:duration でアニメーションを含むカスタム レイアウトを行います。問題は、デバイスが LandscapeLeft から LandscapeRight に変更された場合、インターフェイスは回転する必要がありますが、レイアウト コード、特にアニメーションは実行されないことです。ある風景から別の風景に変化していることをどのように検出できますか? self.interfaceOrientation と [[UIApplication sharedApplication] statusBarOrientation] は有効な結果を返さず、デバイスが既に回転していると考えているようです。その結果、以下は機能しません。
if (UIInterfaceOrientationIsLandscape(toInterfaceOrientation) && UIInterfaceOrientationIsLandscape([[UIApplication sharedApplication] statusBarOrientation]) {...}