私の場合、autoresizingMasks が機能しないため、縦向きと横向きの専用の手動で設定されたフレームを持つカスタム UIView があります。
このフレームを次のように設定しました。
- (void)viewWillAppear:(BOOL)animated
そして、それは期待どおりに機能します。
私の問題は、私の UIView に、縦向き/横向き専用の位置を持つサブビューがさらにあることです。
これらのサブビューを次の場所に配置します。
- (void)layoutSubviews
たとえば、viewController を縦向きのままにし、別の viewController で横向きに回転してから、この viewController に戻ると、ビューのサイズが正しく変更されていることがわかりますが、layoutSubviews に配置されるビューのサブビューはまだ再配置されていませんが、ビューが既に表示された後、アニメーション化された方法でサイズ変更されます。
私はviewDidAppearで何もしません、そして私はすでに電話を試みました
- (void)layoutIfNeeded
としても:
- (void)setNeedsLayout
ですが、viewWillAppear何も変わっていないようです。
私が間違っていることはありますか?