我一直在使用Xcode 4.4(4F250)跟蹤Apple’s 「Your First Mac App」 tutorial。語義問題「屬性實現必須在接口中聲明」,同時遵循Apple的「Your First Mac App」教程
在creating an outlet for the slider之後,我無法再編譯該應用程序。存在語義問題:「屬性實現必須在接口中聲明。」
Stack Overflow上的類似問題似乎是由錯誤或缺少@property
聲明造成的。不過,我已經對教程進行了雙重和三重檢查。聲明如下:
@property (weak) IBOutlet NSSlider *slider;
我很感激任何幫助,因爲我完全卡住了。我相信我一直在關注該教程,但事情出錯了。這不是開始的好方法。 : -/
萬一它很重要,這裏是頭和代碼的完整代碼。
AppDelegate.h
#import <Cocoa/Cocoa.h>
@interface AppDelegate : NSObject <NSApplicationDelegate>
@property (assign) IBOutlet NSWindow *window;
@property (weak) IBOutlet NSSlider *slider;
- (IBAction)mute:(id)sender;
- (IBAction)takeFloatValueforVolumeFrom:(id)sender;
@end
AppDelegate.m
#import "AppDelegate.h"
@implementation AppDelegate
@synthesize slider;
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
}
- (IBAction)mute:(id)sender {
}
- (IBAction)takeFloatValueforVolumeFrom:(id)sender {
}
@end
這可能是一個有趣的旁白。當我看着'AppDelegate.h'(這是一個[截圖](https://dl.dropbox.com/u/1468510/share/2012-07/25-png-D0l9wj/index.html)),那裏是'slider'屬性旁邊的一個填充圓。但App Delegate的Connections Inspector顯示滑塊出口的感嘆號,抱怨_AppDelegate沒有名爲slider的插座._ – Alex 2012-07-25 22:03:42
您是如何連接IB中的插座的?我沒有看到您發佈的代碼有任何問題,因此很難說出發生了什麼。 – rdelmar 2012-07-25 22:59:36
@rdelmar我按Ctrl-拖動到頭文件並按照教程中的描述填充字段。 – Alex 2012-07-26 06:39:07