隐藏具有淡入淡出效果的Mac桌面图标?

时间:2012-07-03 17:07:48

标签: objective-c xcode macos cocoa osx-lion

是否可以在Mac上隐藏或取消隐藏具有淡入淡出效果的桌面图标? 这可能是通过在实际桌面上放置壁纸图像来完成的, 这样当单击桌面时,就会出现图标。

像这样的approch可以sandboxed吗?

2 个答案:

答案 0 :(得分:3)

基本方法是使用适当的NSWindow创建无边框levelkCGDesktopIconWindowLevelKey是桌面图标的级别,因此应该可以使用。

沙盒对此不是问题,因为您实际上并没有删除桌面图标,只是在它们上面显示一个窗口。

您可能还想将窗口的collectionBehavior设置为NSWindowCollectionBehaviorStationary,以免受到Exposé的影响。

答案 1 :(得分:0)

我不确定这是否可行,因为:

  1. 叠加层必须在桌面上,但在新窗口下
  2. 这很可能无法成为沙盒
  3. 但是如果你能够工作,那么工作流程就是:

    1. 用户点击按钮(最好是菜单栏,因为此应用程序实际上没有窗口)
    2. 全屏窗口(禁用UI元素,例如菜单栏)淡入,背景图像设置为Mac的背景图像
    3. 再次单击该按钮会隐藏窗口