2011-08-08 60 views
4

在我AppDelegate.h文件我寫了下面的代碼錯誤:@synthesize

@interface iBountyHunterAppDelegate : NSObject <UIApplicationDelegate> { 
    UITabBarController *tabcontroller; 

} 
@property (nonatomic,retain) IBOutlet UITabBarController *tabcontroller; 

和AppDelegate.h文件I合成它。

@synthesize tabcontroller; 

但@synthesize行我得到一個錯誤和味精是:「丟失上下文屬性實現宣言」

誰能告訴我該怎麼解決呢?

+0

你不需要這個部分:'{*的UITabBarController tabcontroller; }'。該部分由@synthesize自動生成。另請參閱MaciejK的答案。 – Jano

回答

6

我懷疑你已將@synthesize置於@implementation之外。它應該是這個樣子

// iBountyHunterAppDelegate.m 

#import "iBountyHunterAppDelegate.h" 

@implementation iBountyHunterAppDelegate 

@synthesize tabcontroller; // note that this is between @implementation and @end 

// other stuff 

@end 
5

「並在AppDelegate.h文件中綜合它。」可能它只是拼寫錯誤,但它必須在.m文件中:P

1
@interface iBountyHunterAppDelegate : NSObject <UIApplicationDelegate> 

{ 

    UITabBarController IBOutlet *tabcontroller; 

} 

@property (nonatomic,retain) IBOutlet UITabBarController *tabcontroller; 

AppDelegate.h文件I合成它。

@synthesize tabcontroller; 
0

合成在控制器(iBountyHunterAppDelegate.m)特性文件,而不是接口(.h)文件中