問題タブ [safearea]
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 - SwiftUI:proxy.safeAreaInsets.bottomの高さがkeyboardHeightと等しいのはなぜですか?
そのため、iPhone 11 Pro Max の safeAreaInset.bottom は 34.0 ですが、キーボードを開くと、safeAreaInset.bottom がキーボードの高さ (346.0 ポイント) に変更されます。キーボードが開いているときに safeAreaInset.bottom 値 (34.0) にアクセスする方法はありますか?
参考までに、私のコンテンツ ビューにはジオメトリ リーダーが含まれています。
また、これをすべてのデバイスに適用できるようにする必要があります。さまざまなデバイスに対して一連の if ステートメントを作成するのは、かなり恐ろしい解決策のようです。誰にも提案がありますか?
ios - 画面の安全領域を超える VStack の子ビューをどのようにクリップしますか?
私は SwiftUI を初めて使用し、画面の安全な領域に対して VStack を設定する方法について質問があります。
私は現在、ログイン画面にシングルサインイン/サインアップボタンを持つアプリを書いています。ログイン画面に入力された電子メール アドレスが存在しない場合、さらにいくつかの子ビューが画面に表示され、登録画面のように画面が表示されるという考え方です。
このコードを使用して、私が望んでいたことを達成できました...
VStack 内のビューの合計の高さがセーフ ビュー エリアの高さと比較して小さい場合、ContentView の一番上の VStack 内の子ビューは、画面のセーフ ビュー エリア内に含まれているように見えます (これは私が予想したことです)。これは、一番上の VStack に灰色の背景修飾子を追加して、電話画面に対してどのくらいのビューがカバーされているかを確認したときに確認できます。
VStack は安全領域内に収まります (クリックして画像を表示)
ただし、VStack 内の子ビューがセーフ エリアの高さを超える場合 (追加の登録フィールドが表示される場合など)、子ビューはクリップされず、セーフ エリアの外にこぼれることに気付きました。
VStack が安全な領域からこぼれる (クリックして画像を表示)
安全な領域からこぼれる子ビューの上端と下端をクリップできるようにする、一番上の VStack に使用できる修飾子はありますか?
さまざまなスマートフォン プレビューを使用してアプリを実行するときに、これを視覚的なインジケーターとして使用したいと考えています。これにより、VStack の子ビューがセーフ エリアからあふれ出た場合に実行する必要がある高さのサイズ変更を簡単に確認できます。特定の iPhone 画面サイズ。
私はこの情報を探してみましたが、私が見ているのは私が望むものとは反対です. :)
また、使用する以外に、VStack 内の子ビューの自動サイズ変更を実装して、画面の安全な領域の高さに収まるようにするより良い方法はありますか?
提供できる提案を高く評価します。ありがとう。
flutter - フラッター変更ボトム ナビゲーション バーの高さ
カスタムを構築しようとしbottomNavBar
ていますが、コードは次のようになります。
私はこれを次のScaffold
ように呼んでいます:
しかし、問題はそれbottomNavBar
が画面全体を覆っていることです! がなくても問題なくColumn
動作しますが、Column
は非常に重要なのでContainer
、height: MediaQuery.of(context).padding.bottom,
デバイスの に応じheight
てnavBar
が動的に変化しSafeArea
ます。(例:iPhone SEは無いbottomSafeArea
のにiPhone Xはあるので高さ調整が必要です。)
ここで何が欠けていますか?どうすれば解決できますか?
さらに情報が必要な場合は、お知らせください。