SwiftUIでImageの大きさを変更する

SwiftUIで表示する画像の大きさを変更しようとした時にframeメソッドで大きさを指定してもリサイズできなかったので、変更方法を調べてみた。

struct ContentView: View {
    var body: some View {
        VStack{
            MyImage()
                .frame(width: 150, height: 150, alignment: .center)
            }
        }
    }
}

.frame(width: 150, height: 150, alignment: .center)で表示する際の大きさを指定したが、実際に表示してみると元の大きさのままだった。

調べてみたところ、resizableメソッドを呼んで大きさを変更可能にしないといけないらしい。

import SwiftUI

struct MyImage: View {
    var body: some View {
        Image("ImageName")
        .resizable() // 大きさの変更をできる様にする
    }
}

struct MyImage_Previews: PreviewProvider {
    static var previews: some View {
        MyImage()
    }
}

これで無事Imageの大きさの変更ができた。

参考

https://stackoverflow.com/questions/56505692/how-to-resize-image-with-swiftui/56505725