Я строй сегментированного контроля в моем методе viewDidLoad, например, так:Как удалить сегментированный контроллер из uinavigationcontroller после просмотра?
NSArray *tabitems = [NSArray arrayWithObjects:@"ONE", @"TWO", nil];
UISegmentedControl *tabs = [[UISegmentedControl alloc] initWithItems:tabitems];
tabs.segmentedControlStyle = UISegmentedControlStyleBar;
tabs.frame = CGRectMake(185.0, 7.0, 130.0, 30.0);
tabs.selectedSegmentIndex = 0;
[self.navigationController.navigationBar addSubview:tabs];
[tabs release];
Но когда пользователь возвращается в иерархии UINavigationController сегментированного контроллер остается на панели навигации. Как я могу избавиться от него? Или я делаю что-то принципиально неправильное?
EDIT
После предложения Алекса, я propertized язычков и попробовал:
NSArray *tabItems = [NSArray arrayWithObjects:@"FAQs", @"Terms", nil];
self.tabs = [[UISegmentedControl alloc] initWithItems:tabItems];
, но я не уверен, что это хорошая идея, чтобы Alloc собственности;
И я использую
[self.tabs removeFromSuperview];
в моем viewWillDisappear. Этого достаточно?
Спасибо. как бы настроить сегментированный элемент управления без выделения/инициализации? И можете ли вы дать мне строку кода, необходимую в методе viewWillDisappear. Спасибо – cannyboy
сменил вопрос – cannyboy
См. Правки. –