自分のオブジェクトに設定されたUITableViewCell
サブクラスがあります。このオブジェクトには3つのレイヤーが含まれています。すべてのレイヤーを更新する場所に実装しました。問題は自動回転です。backgroundView
UIView
UIView
CALayer
- (void)layoutSubviews
CALayer
横向きモードから縦向きモードに回転すると、次のような外観上の問題が発生します。
アニメーション中、すべてのCALayer
レイヤーはポートレートモードと同じくらい狭くなります。
この男は正しいようです:
向きの変更中に呼び出されると、ビューの境界は、回転の終了時
layoutSubviews
に表示される境界にすでに設定されています。
出典:シングルステップ回転を使用してスムーズなアニメーションを実現する方法/回転の開始時に新しいフレームサイズを取得するにはどうすればよいですか?
では、適切な自動回転を実現するには、レイヤーをどこで更新する必要がありますか?ビューはすでにそれらを回転させているので、カスタムアニメーションを行う必要はなく、サイズを調整するだけだと思います。右?