UIImageView не появляется - PullRequest
1 голос
/ 12 марта 2010

Я пытаюсь работать с UIImageView программно и не могу отобразить его на экране. В моем заголовке есть следующие строки:

@interface myClass : UIView {
    UIImageView *imageView;
}
@property (nonatomic, readonly) IBOutlet UIImageView *imageView;

Тогда в моем viewWillAppear есть следующее:

self.imageView.frame = CGRectMake(10, 10, 72, 72);
self.imageView.backgroundColor = [UIColor redColor];
[self.imageView setImage:[UIImage imageNamed:@"test-image.png"]];
[containerView addSubview:self.imageView];

И это вообще не работает. Если я добавлю следующие строки в viewWillAppear, я смогу отобразить UIImageView:

UIImageView *imgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"blue_button_bg.png"]];
[containerView addSubview:imgView];

Так что я не могу понять, почему создание экземпляра UIImageView будет работать, а использование класса ivar - нет. Что я здесь не так делаю?

Большое спасибо!

Ответы [ 2 ]

0 голосов
/ 12 марта 2010

Вы должны создать экземпляр всех объектов. Один из способов сделать это, если вы хотите сохранить ссылку на imageView, это ... (не забудьте опубликовать его в dealloc).

 imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"blue_button_bg.png"]];
[containerView addSubview:imageView];

Остальное можно потренировать;)

0 голосов
/ 12 марта 2010

Уберите IBOutlet и добавьте:

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