【发布时间】:2020-01-03 17:30:54
【问题描述】:
我想将图像框架的大小调整为与 iPhone 屏幕宽度相同的正方形,因此高度值(屏幕宽度)也相同。
以下代码不起作用,因为它使图像具有相同的视图高度。
var body: some View {
Image("someImage")
.resizable()
.frame(minWidth: 0, maxWidth: .infinity, minHeight: 0, maxHeight: .infinity, alignment: .center)
.clipped()
}
【问题讨论】:
-
听起来您遇到了不同的问题,因为您正在使用
Image。 (是的,有两种相当简单的方法可以获得屏幕宽度,但我认为它们不会解决您的问题。)您是否尝试过添加此修饰符?.aspectRatio(contentMode: .fit) -
第二条评论...我赞成@DoesData 的答案,因为这是一对二的
SwiftUI这样做的方式(并且没有反对@MehmetAliVataniar 的答案,尽管它使一些严重的非-SwiftUI 假设。第二种方式 - 在以下问题中找到,使用子类化UIHostingController并可能让您很多您可以做更多的事情:stackoverflow.com/questions/57441654/…