SwiftUI调整图片尺寸以适应屏幕尺寸
使用GeometryReader来获取
范例:
1 2 3 4 5 6 7 8
| VStack { GeometryReader { geo in Image("Example") .resizable() .aspectRatio(contentMode: .fit) .frame(width: geo.size.width, height: 300) } }
|
实例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| var body: some View { GeometryReader { geo in VStack { ZStack { Circle() .frame(width: geo.size.width / 2, height: geo.size.width / 2) .foregroundColor(.blue) Text("?") .foregroundColor(.white) .font(.system(size: 60, weight: .bold, design: .default)) } ForEach(0 ..< 3) { item in Circle() .frame(width: geo.size.width / 4, height: geo.size.width / 4) } } } }
|
![]https://p.zhheo.com/mweb/%2015972915738007%20_2020_08_13_.jpg!blogimg)