我有一个Image
Image(img, scale:1.0, orientation:.right, label:self.label).resizable().aspectRatio(contentMode:.fit)
作为NavigationLink
的目的地,但它不会占据整个屏幕:左右两边都留有余量如何使所有的横向空间占据?
(然而,当我删除NavigationLink并单独放置Image
时,它确实占用了所有的水平空间。你在干什么?)
编辑:下面是代码的大致结构
NavigationView{
Spacer()
VStack{
NavigationLink(
destination:{
VStack{
Button("btn"){}.buttonStyle(.bordered)
VideoView(img:self.video.img)
}
},
label:{
HStack{
Text("view").font(.title)
}
.frame(minWidth:300, minHeight:70).foregroundColor(.white).background(.blue).cornerRadius(12)
})
NavigationLink(destination:{Text("view")}, label:{
HStack{
Text("view").font(.title)
}
.frame(minWidth:300, minHeight:70).foregroundColor(.white).background(.blue).cornerRadius(12)
})
} // VStack
.navigationTitle("title")
Spacer()
}
struct VideoView:View{
var img:CGImage?
let label = Text("video")
var body:some View{
if let img = img{ Image(img, scale:1.0, orientation:.right, label:self.label).resizable().aspectRatio(contentMode:.fit) }
else{ Color.blue }
}
}
其中,VideoView
旨在将iPhone的摄像头馈送呈现为CGImage
,该馈送来自self.video.img
。
1条答案
按热度按时间ugmeyewa1#
1.我猜你的设备当前的方向是
landscape
1.您可以在
NavigationLink
的VStack {}
下面添加这一行,以忽略SafeArea的水平边缘。