很多人可能遇到过通过代码创建了一个UITabBarController,并设置了tabbar的高度为40,结果发现上方的view和下面的tabbar中间出现了一个间隙。调整view的frame也没有用,怎么能刷新一下页面把这个间隙去掉呢?
只改tabbar的frame是不够的,不要忘了同时要改这个UITransitionView的高度。即改变TabBar加载的viewControllers的显示View高度,如图:
代码如下:
[cpp] view plain copy
- // 改变tabBarController高度
- UITabBarController *mTabBar = [[UITabBarController alloc] init];
- mTabBar.tabBar.frame = CGRectMake(0, 460-40, 320, 40);
- UIView * transitionView = [[mTabBar.view subviews] objectAtIndex:0];
- transitionView.height = 460-40;
7.改变导航栏的属性
[UINavigationBar appearance].barTintColor = [UIColor grayColor];
[UINavigationBar appearance].tintColor = [UIColor whiteColor];
[UINavigationBar appearance].barStyle = UIBarStyleBlack;
8.改变tabBarController 中的tabBar的大小
for (UIBarItem *item in mainTab.tabBar.items) {
[item setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:
[UIFont fontWithName:@"Helvetica" size:20.0], NSFontAttributeName, nil]
forState:UIControlStateNormal];
}
时间: 2024-08-02 02:46:04