【问题标题】:Transparent NSMenu透明的 NSMenu
【发布时间】:2012-09-16 22:35:30
【问题描述】:

我正在尝试更改 NSMenu 的不透明度,我制作了自定义 NSMenuItems 并更改了它们的不透明度,但它们后面仍然是白色的菜单,我正在寻找一种方法来改变颜色和不透明度菜单背景。我想知道这是否可能?

问候

【问题讨论】:

    标签: objective-c cocoa opacity nsmenuitem nsmenu


    【解决方案1】:

    我认为没有一种优雅的方法可以做到这一点。 NSMenu 不是 NSView 的子类。渲染视图可能是菜单对象的私有变量。

    NSMenuItem 有一个可以使用的view 属性。尝试设置自定义视图(如果您还没有),然后通过调用menuItem.view.superview 找到菜单的视图。然后设置该视图的alpha 属性。

    或者,您可以尝试使用class-dump 之类的工具查找NSMenu 的私有view 属性。请注意,使用私有变量绝不是一个好主意。特别是如果您打算在 App Store 上发布该应用。

    【讨论】:

    • 感谢您的回答。使用超级视图不起作用。我正在尝试不使用私有变量。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-18
    • 1970-01-01
    • 2015-05-12
    • 2016-02-15
    • 2017-01-11
    • 2021-11-01
    相关资源
    最近更新 更多