UIScrollView を持つ ViewController があります。この VC では、スクロール ビュー内にある UILabel のフレームをプログラムで調整します。これは、viewDidLoad で行われます。この UILabel は、VC の xib ファイルから取得されます。プログラムで作成されたものではなく、フレームのみが変更されています。
この VC から別の VC に移行してから戻ると、UILabel のフレームが XIB の状態にリセットされます。テキストはリセットされませんが、以前に設定したテキストのままです。
UILabel のプロパティは willLayoutSubviews で正しく、VC に戻るときに didLayoutSubviews でリセットされるため、調査の結果、これは layoutSubviews で発生することがわかりました。
これは予想される動作ですか?ラベルのテキストが残っているのにフレームがリセットされる理由はありますか? これは、スクロールするたびに UIScrollView がその親ビューで layoutSubviews を呼び出すためですか?
ありがとう