У меня есть TabBar основы приложения, где я добавить контроллеры в приложении, как это:магазин TabBar Вкладка порядок в основных данных
UIStoryboard *storyboard = self.storyboard;
self.tabbar = [[UITabBarController alloc]init];
// FirstViewController
SoccerViewController *fvc=[storyboard instantiateViewControllerWithIdentifier:@"SoccerViewController"];
fvc.navigationItem.title = @"Fodbold";
fvc.tabBarItem.image=[UIImage imageNamed:@"fodbold.png"];
//SecondViewController
HaandballViewController *svc=[storyboard instantiateViewControllerWithIdentifier:@"HaandballViewController"];
[email protected]"Håndbold";
svc.tabBarItem.image=[UIImage imageNamed:@"handball.png"];
//ThirdViewController
FootballViewController *tvc= [storyboard instantiateViewControllerWithIdentifier:@"FootBallViewController"];
[email protected]"Amr. Fodbold";
tvc.tabBarItem.image=[UIImage imageNamed:@"nfl.png"];
//ForthViewController
BasketballViewController *fovc=[storyboard instantiateViewControllerWithIdentifier:@"BasketBallViewController"];
[email protected]"Basketball";
fovc.tabBarItem.image=[UIImage imageNamed:@"basketball.png"];
//FifthViewController
HockeyViewController *ftvc=[storyboard instantiateViewControllerWithIdentifier:@"HockeyViewController"];
[email protected]"Ishockey";
ftvc.tabBarItem.image=[UIImage imageNamed:@"icehockey.png"];
[API sharedInstance].allViewCont = [NSMutableArray arrayWithObjects:fvc,svc,tvc,fovc,ftvc, nil];
self.tabbar.viewControllers= [API sharedInstance].allViewCont;
[self.view addSubview:self.tabbar.view];
// NSLog(@"%@", [API sharedInstance].allViewCont);
//[self performSelector:@selector(hideSports) withObject:nil afterDelay:1];
self.tabbar.delegate = self;
Теперь спасительные работы и я закрыть приложение и открыть я получаю это:
"<HaandballViewController: 0x7fdd9a589bd0>",
"<SoccerViewController: 0x7fdd9a58ac40>",
"<FootballViewController: 0x7fdd9a593180>",
"<BasketballViewController: 0x7fdd9a594350>",
"<HockeyViewController: 0x7fdd9a58efe0>"
, но я не могу установить отсортированные краны, как это:
- (void)setTabOrderIfSaved {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSData *data = [defaults objectForKey:@"sortetTabs"];
NSMutableArray *savedOrder = [NSKeyedUnarchiver unarchiveObjectWithData:data];
NSMutableArray *orderedTabs = [NSMutableArray arrayWithCapacity:6];
NSLog(@"Test af gem array %@",savedOrder);
if (savedOrder!=nil && [savedOrder count] > 0) {
for (int i = 0; i < [savedOrder count]; i++){
for (UIViewController *aController in self.tabbar.viewControllers) {
if ([aController.title isEqualToString:[savedOrder objectAtIndex:i]]) {
[orderedTabs addObject:aController];
}
}
}
for (UIViewController *aController in self.tabbar.viewControllers) {
int loaded=0;
for (UIViewController *bController in orderedTabs) {
if ([aController.title isEqualToString:bController.title]) {
loaded=1;
break;
}
}
if (loaded==0) {
[orderedTabs addObject:aController];
}
}
self.tabbar.viewControllers = orderedTabs;
}
я fixet это .......
Вы не должны добавлять точку зрения барного контроллера вкладки как subview, не делая контроллер панели вкладок контроллером детского представления - даже тогда я не уверен, что вы должны это делать. Контроллер панели вкладок, вероятно, должен быть контроллером корневого окна окна, или вы можете представить его модально с другого контроллера. – rdelmar