私は普通のUITabBar
を使って、背景のイメージを高さの低いカスタムイメージに変更しましたので、frame
のheight
を変更しました。 最初はタブバーの下に空白があります。私はframe
のorigin
も変更しました。しかし、今の空白スペースは、タブバーの上まで移動しているとこれが結果です:カスタムUITabBarとViewControllerの間のスペース
そして、これはAppDelegateでタブバー宣言するコードです:
self.tabContoller = [[UITabBarController alloc] init];
//customizing the tabbar
UIImage * tabBackgroundImage = [UIImage imageNamed:@"tabBarBg.png"];
self.tabContoller.tabBar.backgroundColor = [UIColor colorWithRed:245.f/255.f green:245.f/255.f blue:245.f/255.f alpha:255.f/255.f];
self.tabContoller.tabBar.backgroundImage = tabBackgroundImage;
//setting the tabbar height to the correct height of the image
CGRect tabR = self.tabContoller.tabBar.frame;
CGFloat diff = tabR.size.height - tabBackgroundImage.size.height;
tabR.size.height = tabBackgroundImage.size.height;
tabR.origin.y += diff;
self.tabContoller.tabBar.frame = tabR;
私は推測します問題は、ViewController
が、通常のタブバーの高さである一定のスペースの上に描画されることです。それを変更する方法はありますか?
viewcontrollerの 'view'の' height'を増やしてみてください。 xibを作成できない場合は、 'viewDidLoad'で手動で行います。 – Mat
それは動作しません、私は 'viewWillAppear'と' viewDidAppear'でそれを設定しようとしました。それは効果がありません。 – Nadavrbn