Почему XCode не понимает, что я синтезировал свою собственность? - PullRequest
1 голос
/ 18 марта 2011

В моем интерфейсе у меня есть:

#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 Ответ

2 голосов
/ 18 марта 2011

Стоит отметить: копирование приведенного выше кода не приводит к предупреждению о моей установке. Можете ли вы убедиться, что в реальном коде нет опечатки?

В противном случае вы можете попробовать удалить ключевое слово IBOutlet из объявления переменной и оставить его только в объявлении свойства. Это может сбивать с толку ...

...