【发布时间】:2020-12-30 20:40:12
【问题描述】:
我希望我能像图片中那样做这样的事情。
我正在尝试使用这段代码,但我不太了解如何修复它。
我希望我可以在Button 或ImageMac 上使用它,这应该是一个图像。
谁能帮帮我?
代码:
func showLittlePopoverWithMessage(sender: NSView, message: String) {
let controller = NSViewController()
controller.view = NSView(frame: CGRect(x: CGFloat(100), y: CGFloat(50), width: CGFloat(100), height: CGFloat(50)))
let popover = NSPopover()
popover.contentViewController = controller
popover.contentSize = controller.view.frame.size
popover.behavior = .transient
popover.animates = true
let invisibleWindow = NSWindow(contentRect: NSMakeRect(0, 0, 20, 5), styleMask: .borderless, backing: .buffered, defer: false)
invisibleWindow.backgroundColor = .red
invisibleWindow.alphaValue = 0
//controller.view.addSubview(sender)
popover.show(relativeTo: sender.bounds, of: sender as! NSView, preferredEdge: .maxY)
}
#if os(macOS)
struct ImageMac: View {
let symbol: String
init(systemName: String) {
self.symbol = [
"star": "☆",
"star.fill": "★",
"heart": "????",
"heart.fill": "????",
"video": "????",
"lock.fill": "????",
"lock.open.fill": "????",
"checkmark.seal.fill": "????"
][systemName] ?? "?"
}
var body: some View { Text(symbol) }
}
#endif
ImageMac(systemName: "checkmark.seal.fill").foregroundColor(.blue)
Button(action: {}) {
Text("Button")
}
【问题讨论】:
标签: swift image swiftui tooltip popover