objective-c - 使用 Cocoascript 为 NSWindow 设置背景图像

标签 objective-c cocoa javascriptcore cocoascript sketchapp

我正在尝试创建一个这种样式的窗口:

enter image description here

我有以下代码,但我只得到背景。我猜它找不到图像。

var win = [[NSWindow alloc] init]
[win setFrame:NSMakeRect(0, 0, 320, 200) display:false]
[win setBackgroundColor:[NSColor colorWithPatternImage:[NSImage imageNamed:@"background.png"]]];

我写这篇文章是为了 Sketch App plugin所以我必须使用Cocoascript 。我的插件结构如下所示

myplugin.sketchplugin/
    Contents/
        Sketch/
            app.js
            manifest.json
        Resources/
            background.png

我不确定将背景图像放在哪里或如何引用它。它必须在manifest.json 中吗?在哪个键下?

最佳答案

(我不使用 Sketch,因此未经测试)

Here是如何加载位于 Resources 文件夹中的 World.pdf 的示例。

它基本上是这样做的:

var plugin = context.plugin;// the plugin (MSPluginBundle)
var imageLayer = SketchLib.addImageLayer(group, {"name": "World", "url": [plugin urlForResourceNamed:"World.pdf"]})

因此,如果[plugin urlForResourceNamed:"World.pdf"]完成了我怀疑的工作

[plugin urlForResourceNamed:"background.png"] 也应该如此。

关于objective-c - 使用 Cocoascript 为 NSWindow 设置背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29583984/

相关文章:

iphone - 对象的 3D 旋转

javascript - 在 Swift 中,如何调用 JSContext.callWithArguments 返回的 Jscript 对象的方法

javascript - 如何测量 JavaScript 引擎中的 CPU 缓存和预取缺失?

iOS obj-c 从 UIPageViewController 转移

objective-c - 如何在 ImageView 上方放置自定义按钮>

iphone - OpenGL ES 和默认 iPhone UI 组件

objective-c - 在 Objective-C 中的多种图像格式之间转换

objective-c - Xcode 无法识别通过类别添加的方法

c - 当出现 "multidigit number with all digits identical"时,如何让我的程序执行任何操作?

ios - NSObject 传递给 JavaScriptCore 后未释放