0

アプリ内の他のビューについてユーザーに指示を与えるオーバーレイを実装しようとしています。ビュー階層のスケッチは次のとおりです。

SomeFullScreenContainerView
    FullScreenContainerOfInstructionView
        InstructionView
    FullScreenView
        MaybeSomeIntermediateViews
            ViewToProvideInstructionsFor

InstructionViewに対して相対的に配置する必要がありますが、そのためには、 のフレームを参照して のフレームを設定できるように、ViewToProvideInstructionsForを含むビュー階層のブランチが配置されていることを確認する必要があります。これどうやってするの?ViewToProvideInstructionsForViewToProvideInstructionsForInstructionView

4

1 に答える 1

0

更新しました

いくつかのアイデア:

  1. 自動レイアウト制約を使用して、レイアウト エンジンに処理させます。
  2. FullScreenContainerOfInstructionView完了後にビュー階層に挿入しFullScreenViewます。
  3. [FullScreenContainerOfInstructionView layoutSubviews]準備ができていることを示すフラグを設定するまで、何もしないでくださいFullScreenView
  4. setNeedsLayout準備ができた後に使用FullScreenViewし、最初のパスが間違っていることを心配する必要はありません。

オリジナル

[viewThatNeedsToBeLaidOut layoutIfNeeded];
于 2014-04-28T03:23:57.853 に答える