web-dev-qa-db-ja.com

SwiftUIの画像全画面幅

SwiftUIアプリケーションで体に画像を追加し、その画像がデバイスの全幅をカバーするようにしたいが、それを超えないようにしたい。

bodyでは、画像オブジェクトを返します。

_var body: some View {
    Image("page-under-construction")
}
_

画像が表示されますが、大きすぎます。

フレームを設定してみました。強調表示された境界に影響しますが、画像のサイズが変更されません。
組み合わせて、.aspectRatio(contentMode:)をいじってみましたが、レイアウトには影響がないようです。

どうすれば効果的に画像を画面幅の100%にすることができますか?

5
LinusGeffarth

これは、背景画像を追加してSwiftUIの全画面に表示する方法です

import SwiftUI

struct ContentView: View {
    var body: some View {
        ZStack {
            Image("background")
                .resizable()
                .aspectRatio(contentMode: .fill)
                .edgesIgnoringSafeArea(.top)
        }
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}
0
MrG