2012-03-26 3 views
0

Ниже мой код:Как назначить объект локальному объекту в IOS?

Первый Category.h

#import <Foundation/Foundation.h> 
@interface Category : NSObject { 
    NSMutableArray *items; 
    NSString *name; 
    NSString *description; 
    NSString *imagePath; 
    NSString *id; 
} 

@property (nonatomic, retain) NSMutableArray *items; 
@property (nonatomic, retain) NSString *name; 
@property (nonatomic, retain) NSString *description; 
@property (nonatomic, retain) NSString *id; 
@property (nonatomic, retain) NSString *imagePath; 
-(id)init; 
-(UIImage*)getImage; 
@end 

И контроллер:

- (id)initWithCategory:(Category *)categoryItem 
{ 
    self = [super init]; 
    if (self) { 
     self.category = categoryItem; 
    } 
    return self; 
} 

И в заголовочном файле:

@property (nonatomic, retain) Category *category; 
- (id)initWithCategory:(Category *)categoryItem; 

Я хочу, чтобы самостоятельно . category и categoryItem будет точно такой же.

Обновление: Мне очень жаль, ошибки здесь не было. Спасибо за помощь.

+0

Что означает «не может назначить его»? Любое предупреждение или флаг? – CodaFi

+0

Значения не совпадают. Я хочу, чтобы объект категории был бы categoryItem. – Burak

+0

Я не считаю, что 'category' не соответствует' categoryItem' после присвоения в 'initWithCategory'. Как вы это видите? – mattjgalloway

ответ

0

Если category является собственностью, то вы должны использовать self.category.

Однако, если предположить, что вы синтезировали вашу собственность с отступающим Иваром, такими как _category (@synthesize category = _category), то вам следует обратиться к Ивар и использовать _category в методе инициализации.

Смежные вопросы