Я пытаюсь передать UIView другому классу - который вроде работает, но я не могу сохранить указатель ...
в моем .h файле я объявляю представление:
UIView *someView;
Я добавляю свойство
@property (nonatomic, retain) UIView *someView;
И в .m-файле я синтезирую свойство
@synthesize someView;
Затем у меня есть метод для установки представления (которыйустановите и в файл .h - поверьте мне:):
-(void)makeViewPointer:(UIView *)myView{
someView = [[UIView alloc] init];
someView = myView;
for(UIView *aView in someView.subviews){
NSLog(@"tag %d", aView.tag);
}
}
Пока все работает.Когда я регистрирую someView, я получаю указатель, и все подпредставления доступны.
Я вызываю этот метод из другого класса - который, кажется, работает нормально.
СЕЙЧАС - у меня естьIBAction настроен на то, чтобы что-то делать с этим видом после нажатия кнопки
-(IBAction)doSomething:(id)sender{
NSLog(@"show the view %@", someView);
for(UIView *aView in someView.subviews){ // doesn't output anything
NSLog(@"tag %d", aView.tag);
}
}
На этом этапе someView-var снова пуст - ПОЧЕМУ ????
Я предположил, чтокогда я использую @property (nonatomic, retain), переменная сохраняется автоматически?
Я также пытался сохранить переменную при инициализации:
someView = [[UIView alloc] retain];
не работает
или
someView = [[UIView alloc] init];
[someView retain];
тоже не работает ...
Что, черт возьми, я делаю неправильно ???
Спасибо за любую помощь!