我正在开发一个应用程序,它通过一个 ForEach
循环遍历一个数组,它使用数组中每个项目的 URL 来运行。
问题是,当我将 URL 分配给链接然后将其传递到 webview 时,它第一次不起作用,但每次都正确加载 URL。例如,如果链接预设为 www.google.com,点击的第一个对象将显示 google,但如果有意义,其余的将显示正确的链接。如果您想对此进行屏幕录制,请告诉我。
代码如下:
struct ContentView: View {
@State var isPresented = false
@State var link: String = ""
var body: some View {
ZStack{
NavigationView {
ZStack {
ScrollView {
ZStack {
LazyVStack(spacing: 10) {
ForEach(model, id: \.self) { i in
ZStack{
HStack{
VStack(alignment: .leading, spacing: 10){
Text(i.headline)
.fontWeight(.medium)
.lineLimit(6)
.padding()
}
}
}
.cornerRadius(20)
.frame(height: 120)
.onTapGesture() {
link = i.url
if self.link == i.url{
self.isPresented.toggle()
}
}
}
}
.padding(.horizontal)
.padding(.top)
}
}.sheet(isPresented: self.$isPresented) {
webView(url: link)
}
}
}
}
}
}