問題タブ [layoutmargins]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - サブビューを UINavigationBar の大きなタイトルに左揃えにする
UINavigationController のルートとして UIViewController があり、次のように大きなタイトルの設定を設定しましたnavigationController?.navigationBar.prefersLargeTitles = true
私の目標は、ビューの左側をナビゲーション タイトルの左側に揃えることですが、値をハード コーディングするのではなく、動的に行いたいと考えています。望ましい最終結果は次のとおりです。
を使用して、ナビゲーションバーのタイトルの左または x 位置を取得しようとしています
let navigationLeftX = navigationController!.navigationBar.layoutMargins.left
この値も出力して、値を取得しました8.0
それで、私はこれを作成したビューの x 位置として設定する必要があると考えましたviewWillAppear
。
結果は近いですが、まだかなり外れています。
余白xの値を2倍にしたら、ちゃんと揃うようです
したがって、8 ポイントの左マージンとは別に、追加の 8 ポイントのパディングがあり、論理的に考えたところ、ナビゲーションの左マージンを 0 に設定すると、8 ポイントのパディングが表示されるはずであると結論付けようとしていました。 :
しかし驚いたことに、実際にはパディングなしで画面の左端にありました。
誰かがこの動作を説明し、おそらくビューをナビゲーション バーのタイトルに動的に揃える最良の方法を共有できますか?
前もって感謝します