【问题标题】:Custom Button in Swift and MacOSSwift 和 MacOS 中的自定义按钮
【发布时间】:2020-01-18 15:06:38
【问题描述】:

在 MacOS 中有一个名为 Calculator 的简单应用程序,我想使用 Swift 重新创建它以用于学习目的。像计算器上的加号按钮这样的按钮有两张与之关联的图像,一张在按钮向上时,另一张在按钮向下时,如下图所示。

如您所见,当按下 + 按钮时,其图像变为深橙色,文本变为深灰色。我的问题是:如何实现这个按钮行为?

是否可以使用 NSButton 来实现(如果可以,如何实现)?还是使用CALayer更容易实现它?或者也许还有其他我没有想到的方法?

【问题讨论】:

    标签: macos button custom-controls


    【解决方案1】:

    您应该能够使用单个图像并在代码或资产目录中将其配置为“模板图像”。这意味着要考虑形状,就像邮票一样,并且冲压出的区域会动态填充颜色。这意味着您不必提供白色和深灰色/黑色变体。一种变体就足够了,通常是黑色的,可以很好地看到线条,其余的可以通过配置。

    请参阅 SO 问题“点击时如何不突出显示 NSButton 的模板图像?”有关设置的详细信息:How to NOT highlight the NSButton's template image when clicked?

    【讨论】:

      猜你喜欢
      • 2020-07-31
      • 2014-09-10
      • 2023-03-30
      • 2016-04-30
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多