为什么XCode没有意识到我已经合成了我的财产?

时间:2011-03-18 15:54:41

标签: cocoa-touch properties warnings xcode4

在我的界面中,我有:

#import <UIKit/UIKit.h>

@protocol AddCategoryDelegate;

@interface AddCategoryViewController : UIViewController {
    id <AddCategoryDelegate> _delegate; 
}

@property (nonatomic, assign, readwrite) id <AddCategoryDelegate> delegate;    
@property (nonatomic, retain) IBOutlet UITextField *textField;
@property (nonatomic, retain) IBOutlet UILabel *textLabel;    
- (IBAction)saveAction:(id)sender;

@end



@protocol AddCategoryDelegate <NSObject>

- (void)addCategoryViewController:(AddCategoryViewController *)addCategoryViewController didAddCategory:category;

@end

在我的实施中,我有:

#import "AddCategoryViewController.h"

@implementation AddCategoryViewController

@synthesize delegate = _delegate;
@synthesize textField;
@synthesize textLabel;

// methods

@end

但是我不断从XCode收到以下警告:

  

属性'textLabel'需要   方法'setTextLabel:'被定义 -   使用@synthesize,@ dynamic或提供一个   方法实施。

     

属性'textLabel'需要   方法'-textLabel'被定义 -   使用@synthesize,@ dynamic或提供一个   方法实施。

这是一个XCode 4错误,还是我做错了什么?

1 个答案:

答案 0 :(得分:2)

值得注意的是:复制上述代码不会导致我的安装警告。你能确定实际代码中没有拼写错误吗?

否则,您可以尝试从变量声明中删除IBOutlet关键字,并仅将其保留在属性声明中。这可能会令人困惑......