iOSのレイアウト関連

LayoutSubViews

子供のビュー時の位置を調整する必要性を見る、書き換えること。

以下の方法がLayoutSubViewsを呼び出しを開始します

  • 初期化初期化はlayoutSubviewsをトリガしませんが、initWithFrameは、初期化時に、RECTの値はCGRectZeroないときに、トリガされます
  • addSubviewはlayoutSubviewsがトリガされます
  • フレームトリガlayoutSubviewsの設定ビューは、当然のことながら、前部及び後部フレームの値が変更されたことを条件とします
  • UIScrollViewのをスクロールするlayoutSubviewsがトリガされます
  • 画面の回転layoutSubviewsイベントは、親のUIView上のトリガ
  • UIViewのlayoutSubviewsイベントのサイズを変更する場合は、親のUIViewにトリガされます

 子コントロールのUIViewの内部レイアウトを更新

コールのUIView setNeedsLayoutの方法は、システムを再レイアウトする必要としてマークされています。システムは、非同期的に見ると呼ばれるlayoutIfNeededリフレッシュレイアウトを、それがすぐに更新されませんが、layoutSubviewsが呼び出されます。

ビューを呼び出しlayoutIfNeededのビューを更新するようにマークする必要がある場合は、この方法を、LayouSubViewはすぐにレイアウトを呼び出します。

あなたはすぐにリフレッシュしたい場合は、まず[ビューsetNeedsLayout]、レイアウトをマークする必要性を呼び出して、その後すぐにレイアウトを実現するために、[ビューはlayoutIfNeeded]呼び出します

 

おすすめ

転載: www.cnblogs.com/CoderHong/p/11104895.html