2012-07-25 28 views
0

我一直在使用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 
+0

這可能是一個有趣的旁白。當我看着'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

+0

您是如何連接IB中的插座的?我沒有看到您發佈的代碼有任何問題,因此很難說出發生了什麼。 – rdelmar 2012-07-25 22:59:36

+0

@rdelmar我按Ctrl-拖動到頭文件並按照教程中的描述填充字段。 – Alex 2012-07-26 06:39:07

回答

0

看來我的問題只是Xcode的一部分呃逆。今天,我做了同樣的事情,一切都奏效了。

感謝所有試圖幫助我的人。

0

您的評論對我說,你沒有正確鏈接與廈門國際銀行文件滑塊屬性。你需要有一個圓圈,而不是正確的旁邊有一個感嘆號。根據我的經驗,這通常會導致運行時錯誤...所以我不是100%正面,這將解決您的編譯問題。

相關問題