使用 Swift 代码更改 NSButton 的图像

Change image for NSButton with Swift code

我是 运行 Xcode 7.2.1,我正在使用故事板。我在故事板中添加了一个 "Image Button" 并在属性检查器中设置了图像。然后我在我的代码中为按钮创建了一个出口和动作。

当我按下按钮时,我希望它的图像发生变化。在 Swift 中 iOS 我会这样做:

myButtonOutlet.setImage(UIImage(named: "Pressed-Button-Graphic@2x.png"), forState: UIControlState.Normal)

我试过 OS X Swift:

myButtonOutlet.image(NSImage(named: "Pressed-Button-Graphic@2x.png"))

如何更改按钮的图像 Swift (OS X)?

您可以像这样在 NSImage 上设置 image 属性:

myButton.image = NSImage(named: "Pressed-Button_Graphic@2x.png")

不像iOS它不需要使用setImage()方法

@brimstone 的方法在 macOS 上对我不起作用。我是 运行 Swift 4.

如果您将图像添加到 Assets.xcassets,那么这应该可以工作(没有文件扩展名!):

myButton.image = NSImage(named: NSImage.Name("Pressed-Button_Graphic@2x"))

如果您只是将图像导入到您的主文件夹,则使用文件扩展名和文件名。

p.s。对于 iOS 使用:

button.image = UIImage(named: "Picture.png")