我正在尝试创建一个菜单栏应用程序来显示该网站的收件箱。我想制作一个简单的功能,打开一个带有项目网址的小弹出窗口(无需打开 safari)。收件箱项目看起来像这样
struct InboxItem: View {
@State var MesgSite: String = "https://duckduckgo.com"
@State private var showSafari = false
var body: some View {
VStack(alignment: .leading) {
Text("some text")
.background(SelectColor.opacity(0.5))
.onLongPressGesture {
//show preview of the MesgSite here
self.SelectColor = .blue
self.showSafari.toggle()
}.popover(isPresented: self.$showSafari) {
SafariPreview()
}
}
}
struct SafariPreview: View {
var body: some View {
VStack {
Text("Display the webpage here")
.padding()
}.frame(maxWidth: 533, maxHeight: 300)
}
}
Run Code Online (Sandbox Code Playgroud)
我想,当一个人长按该项目时,它应该预览关联的网页,就像 macOS 上的默认邮件应用程序一样,如下所示:
现在弹出窗口可以工作了
我尝试在 a 中添加 awkwebview
和 …