アプリケーション開発ポータルサイト
ServerNote.NET
カテゴリー【SwiftiPhone/iPadMacOS
【Swift UI】GeometryReader内のViewの位置が左にずれてしまう場合
POSTED BY
2023-09-19

配下のViewが座標や画面サイズを取れるので、トップにGeometryReaderを置くコードで発生。以下のようなコード。

struct ContentView: View {
    var body: some View {
        GeometryReader() { geometry in
            VStack() {
                Spacer()
                Text("あああ")
                Spacer()
            }
            .background(Color.white)
        }
    } 
}

Textあああが画面中央のはずが、左に大きくずれてしまった。

どうやらこれを解決するには直下のStackもしくはViewに

.frame(maxWidth: .infinity, maxHeight: .infinity)

とし、めいっぱい広げてやれば解決する模様。

struct ContentView: View {
    var body: some View {
        GeometryReader() { geometry in
            VStack() {
                Spacer()
                Text("あああ")
                Spacer()
            }
            .frame(maxWidth: .infinity, maxHeight: .infinity)
            .background(Color.white)
        }
    } 
}

※本記事は当サイト管理人の個人的な備忘録です。本記事の参照又は付随ソースコード利用後にいかなる損害が発生しても当サイト及び管理人は一切責任を負いません。
※本記事内容の無断転載を禁じます。
【WEBMASTER/管理人】
自営業プログラマーです。お仕事ください!
ご連絡は以下アドレスまでお願いします★

【キーワード検索】