【发布时间】:2014-12-29 04:43:37
【问题描述】:
我正在尝试我的第一个 Mac 应用程序。我对 Objective-C 和 iOS 游戏应用程序有一些经验,但之前从未使用过 XIB 文件或 Interface Builder。
我已经使用 XIB 创建了一个 MasterViewController 类,并且可以使用以下方法成功地让这个 XIB 从 AppDelegate 显示:
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
self.masterViewController = [[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil];
[self.window.contentView addSubview:self.masterViewController.view];
self.masterViewController.view.frame = ((NSView*)self.window.contentView).bounds;
}
屏幕上有一个 Label 和一个 Button,但我不知道如何连接 Button,以便在单击它时触发一个动作。
这里是 MasterViewController.h
#import <Cocoa/Cocoa.h>
@interface MasterViewController : NSViewController
-(IBAction)testMessage;
-(IBAction)testAction;
@end
这里是 MasterViewController.m
#import "MasterViewController.h"
@interface MasterViewController ()
@end
@implementation MasterViewController
- (void)viewDidLoad {
[super viewDidLoad];
}
-(IBAction)testMessage {
NSLog(@"testMessage");
}
-(IBAction)testAction {
NSLog(@"testAction");
}
这是界面生成器的截图:
当我查看 File's Owner 部分时,我的 testAction 没有出现在列表中,因此我无法拖动关联。
我确定我只是遗漏了一些简单的东西,但是如何将 MyButton1 click 分配给我的 testMessage 操作?
我在 OSX 10.9.5 上使用 Xcode 6.1.1
谢谢
【问题讨论】:
标签: xcode macos interface-builder xcode6 xib