私のアプリケーションにはタブバーとステータスバーが含まれています。タブバーは背景画像付きのボタンのように構成されており、このボタンがタブバーに追加されています。問題は、ボタンの高さが47であるということです。ただし、デフォルトのタバーの高さは49です。したがって、タブバーとビューの間にギャップが表示されます。xibで、ビューのフレームサイズを変更しようとしました。しかし、それは不可能です。defualtによってそれは411に来ています。どうすればこの問題を修正できますか?カスタムタブバーを作成する方法はありますか?
これがタブバーの私のコードです
viewController1 *viewController1Obj = [[viewController1 alloc] initWithNibName:@"viewController1" bundle:nil];
viewController2 *viewController2Obj = [[viewController2 alloc] initWithNibName:@"viewController2" bundle:nil];
viewController3 *viewController3Obj = [[viewController3 alloc] initWithNibName:@"viewController3" bundle:nil];
viewController4 *viewController4Obj = [[viewController4 alloc] initWithNibName:@"viewController4" bundle:nil];
viewController5 *viewController5Obj = [[viewController5 alloc] initWithNibName:@"viewController5" bundle:nil];
UINavigationController *nav1=[[UINavigationController alloc]initWithRootViewController:viewController1Obj];
UINavigationController *nav2=[[UINavigationController alloc]initWithRootViewController:viewController2Obj];
UINavigationController *nav3=[[UINavigationController alloc]initWithRootViewController:viewController3Obj];
UINavigationController *nav4=[[UINavigationController alloc]initWithRootViewController:viewController4Obj];
UINavigationController *nav5=[[UINavigationController alloc]initWithRootViewController:viewController5Obj];
nav1.navigationBarHidden=YES;
nav2.navigationBarHidden=YES;
nav3.navigationBarHidden=YES;
nav4.navigationBarHidden=YES;
nav5.navigationBarHidden=YES;
self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = [NSArray arrayWithObjects:nav1, nav2,nav3,nav4 ,nav5, nil];
self.tabBarController.tabBar.frame = CGRectMake(0.0f, self.tabBarController.tabBar.frame.origin.y, 320.0f, 47.0f);
[self.window addSubview:self.tabBarController.view];
self.tabBarController.view.backgroundColor = [UIColor redColor];
self.tabBtn1 = [[UIButton alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 64.0f, 47.0f)];
[self.tabBtn1 setImage:[UIImage imageNamed:@"button1.png"] forState:0];
[self.tabBtn1 setTag:77777];
self.tabBtn1.adjustsImageWhenHighlighted = NO;
[self.tabBtn1 addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
self.tabBtn2 = [[UIButton alloc] initWithFrame:CGRectMake(64.0f, 0.0f, 64.0f, 47.0f)];
[self.tabBtn2 setImage:[UIImage imageNamed:@"button2.png"] forState:0];
[self.tabBtn2 setTag:77778];
self.tabBtn2.adjustsImageWhenHighlighted = NO;
[self.tabBtn2 addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
self.tabBtn3 = [[UIButton alloc] initWithFrame:CGRectMake(128.0f, 0.0f, 64.0f, 47.0f)];
[self.tabBtn3 setImage:[UIImage imageNamed:@"button3.png"] forState:0];
[self.tabBtn3 setTag:77779];
self.tabBtn3.adjustsImageWhenHighlighted = NO;
[self.tabBtn3 addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
self.tabBtn4 = [[UIButton alloc] initWithFrame:CGRectMake(192.0f, 0.0f, 64.0f, 47.0f)];
[self.tabBtn4 setImage:[UIImage imageNamed:@"button4.png"] forState:0];
[self.tabBtn4 setTag:77780];
self.tabBtn4.adjustsImageWhenHighlighted = NO;
[self.tabBtn4 addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
self.tabBtn5 = [[UIButton alloc] initWithFrame:CGRectMake(256.0f, 0.0f, 64.0f, 47.0f)];
[self.tabBtn5 setImage:[UIImage imageNamed:@"button5.png"] forState:0];
[self.tabBtn5 setTag:77781];
self.tabBtn5.adjustsImageWhenHighlighted = NO;
[self.tabBtn5 addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
[self.tabBarController.tabBar addSubview:self.tabBtn1];
[self.tabBarController.tabBar addSubview:self.tabBtn2];
[self.tabBarController.tabBar addSubview:self.tabBtn3];
[self.tabBarController.tabBar addSubview:self.tabBtn4];
[self.tabBarController.tabBar addSubview:self.tabBtn5];
そして、Iamが取得しているギャップで赤い色を示しています。