Я, безусловно, делаю что-то совершенно глупое, надеюсь, кто-то может сказать мне, что! В заключение я хотел бы программно переключать подпредставление при нажатии кнопки (я буду использовать сегментированную кнопку). Это не нужно одушевлять. В идеале я бы загружал содержимое этих представлений из пера.
Я помещаю подкласс UIViewController, инициализированный из кончика, в навигационный контроллер. Этот вид контроллера и это «по умолчанию» вид дисплея в порядке. Этот кончик содержит:
File's Owner [Class=my view controller subclass]
First Responder
View
--Bar Segmented Control
--View //this is the 'subview' whose content I want to toggle
Возможно, я допустил ошибку в своих торговых точках IB? Они подключены следующим образом:
switchableView <--> View
view <--> View
А где switchableView
объявлено:
IBOutlet UIView *switchableView;
...
@property (nonatomic, retain) UIView *switchableView;
Я застрял при замене содержимого этого UIView. Прежде всего, я просто хочу установить его по умолчанию, когда представление впервые появляется. Как только я это получу, переключить его на что-то другое будет легко, так как я уже могу захватить событие, сгенерированное сегментированной кнопкой. Может кто-нибудь сказать, пожалуйста, что я делаю не так?
- (void)loadView {
NSLog(@"loadView invoked");
[super loadView];
UIView *view = [[UIView alloc] init];
UILabel *label = [[UILabel alloc] init];
label.text = @"Segment1";
[view addSubview:label];
[switchableView addSubview:view]; //this is what I can't work out
[view release];
[label release];
}
Этот метод вызывается (как и viewDidLoad
), но не помогает. Я думаю, что я делаю [switchableView addSubview:view]
неправильно. Я также пробовал switchableView = view
, но долгое время в безопасности Java и Perl не дает мне 100% уверенности, правильно ли это попробовать или нет!
Мы надеемся, что кто-то может привести меня в порядок. Заранее спасибо,
Пол