首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Cocoa中创建SIMBL插件

在Cocoa中创建SIMBL插件
EN

Stack Overflow用户
提问于 2012-12-31 22:07:18
回答 1查看 430关注 0票数 0

我想做一个非常基本的SIMBL插件--只要在Safari中添加一个新菜单即可。这是我尝试过的:我将这个添加到我的plist中:

代码语言:javascript
复制
<key>NSPrincipalClass</key>
<string>MySamplePlugin</string>
<key>SIMBLTargetApplications</key>
<array>
    <dict>
        <key>BundleIdentifier</key>
        <string>com.apple.Safari</string>
        <key>MaxBundleVersion</key>
        <string>*</string>
        <key>MinBundleVersion</key>
        <string>*</string>
    </dict>
</array>

然后,我创建了MySamplePlugin类和一个Menu.xib。(所有连接都已建立这不可能是错误)我的.h

代码语言:javascript
复制
-(IBAction)clickAbout:(id)sender;
@property (assign) IBOutlet NSMenu *topMenu;

和我的.main文件

代码语言:javascript
复制
- (id) init {
self = [super init];
if (! self)
    return nil;

[NSBundle loadNibNamed: @"Menu.xib" owner: self];
return self;
}

- (IBAction) clickAbout: (id) sender {
 NSLog(@"do some stuff here");
}



+ (void) load
{
MySamplePlugin* plugin = [MySamplePlugin sharedInstance];
NSMenuItem* item;

item = [[NSMenuItem alloc] init];
[item setSubmenu: [plugin topMenu]];

[[plugin topMenu] setTitle: @"George"];

[[NSApp mainMenu] addItem: item];

NSLog(@"MySamplePlugin installed");
}

+ (MySamplePlugin*) sharedInstance
{
static MySamplePlugin* plugin = nil;

if (plugin == nil)
    plugin = [[MySamplePlugin alloc] init];

return plugin;
}

你知道为什么我的插件不能工作吗?它构建时没有警告,我将其复制到~/Library/Application Support/SIMBL/Plugins/

这是我的console.app输出:http://cl.ly/LsH9

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-31 23:40:30

不要紧,我是通过这个小的代码修改得到的:

代码语言:javascript
复制
 NSMenu* mainMenu = [NSApp mainMenu];

NSMenu* debugMenu = [[NSMenu alloc] initWithTitle:@"Menu"];
NSMenuItem* newItem = [[NSMenuItem alloc] initWithTitle:@"Item" action:nil keyEquivalent:@""];

[newItem setSubmenu:debugMenu];
[mainMenu addItem:newItem];
[debugMenu addItemWithTitle:@"Run Unit Tests" action:nil keyEquivalent:@""];
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14102550

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档