Установка типа ссылки в какао - PullRequest
0 голосов
/ 16 апреля 2011

Я надеюсь, что это простой вопрос, так как я очень новичок в какао. Я создал объект, который имеет UIImageView в качестве свойства. Я устанавливаю свойство в другой процедуре, например

Bleep* bleep = [[Bleep alloc]init];
bleep.heading = heading;
bleep.distance = distance;
bleep.instanceId = instanceId;
...
bleep.imgView = [[UIImageView alloc] initWithFrame:CGRectMake(x, y, bleepImg.size.width, bleepImg.size.height)];

Ошибка не выдана, но imgView равно нулю (0x0). Какое поведение может вызвать это? Я создаю объект bleep, просто устанавливаю типы значений, но этот объект, похоже, не хочет ничего содержать.

Мои занятия:

@interface Bleep : NSObject {

}
@property float x;
@property float y;
@property float distance;
@property int instanceId;
@property UIImageView* imgView;
@property float heading;

@end

@implementation Bleep
@synthesize x;
@synthesize y;
@synthesize distance;
@synthesize instanceId;
@synthesize heading;
@synthesize imgView;

@end

1 Ответ

0 голосов
/ 16 апреля 2011

Вы не видите достаточно кода здесь, но я предполагаю, что вы не сделали свойство правильно. Вы заявили об этом, например:

@property (nonatomic, retain) UIImageView *imgView;

Тогда ты синтезировал это или сделал набор / получил сам? Если вы сделали последнее, возможно, вы допустили ошибку, сославшись на него через self в вашем сеттере.

Если это не так, покажите больше кода.

...

Вот как должен выглядеть ваш код:

@interface Bleep : NSObject {
    UIImageView *imgview;
}
@property(nonatomic, retain) UIImageView* imgView;

@implementation Bleep
@synthesize imgView;

@end

Указатель в классе предоставляется через свойство. Это кажется несколько повторяющимся, но в Xcode 4 большая часть страданий, связанных с многократным набором этих вещей, исчезла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...