私はscrollViewに2つの子viewControllerが含まれています。 VC2が正しくレイアウトされていないことがわかります。サブエリアがビューエリアにないときに安全領域がiPhone Xで正常に機能しない
画面に表示されていない場合は見つかりました。 safeAreaInsets
は常に0です。
スクロールが終了したときにこの問題を解決するには、vc2.view.setNeedsLayout()
と呼ぶことができます。 しかし、スクロールが終了するまでレイアウトが正しくありません。
は、どのようにビューが現在のビュー階層にインストールされていない、または はまだ画面上に表示でない場合、このプロパティのエッジインセットが0
あると言いますこの状況を修正できますか?
あなたは、より多くの情報を提供する「VC1ボトム」と「ボトムVC2」の制約がどのように見えるか、私たちを表示する必要があります。彼らはまったく同じですか? – jonaszmclaren
はい。これは、セーフエリアとボトムからセーフエリアまで同じ制約条件です。 – PowHu
'viewDidLayoutSubviews()'などに 'vc2.view.setNeedsLayout()'を入れるのにうんざりですか? (潜在的な無限ループを防ぐための適切なテストを伴う) – Zaphod