自定义UITabBar的背景图片或者颜色
来源:互联网 发布:持有至到期投资 知乎 编辑:程序博客网 时间:2024/05/17 21:57
方法一:
UITabBarController *tabBarController = [[UITabBarController alloc] init];
CGRect frame = CGRectMake(0, 0, 320, 49);
UIView *v = [[UIView alloc] initWithFrame:frame];
UIImage *img = [UIImage imageNamed:@"tabbar.png"];
UIColor *color = [[UIColor alloc] initWithPatternImage:img];
v.backgroundColor = color;
[tabBarController.tabBar insertSubview:v atIndex:0];
tabBarController.tabBar.opaque = YES;
[color release];
[v release];
方法二:
默认UITabBarController的tabBar背景是黑色的。可以按 下面方法:
UITabBarController *tabBarController = [[UITabBarController alloc] init];
NSArray *array = [tabBarController.view subviews];
UITabBar *tabBar = [array objectAtIndex:1];
UIImage *image = [UIImage imageWithContentsOfFile:sourcePath ];
tabBar.layer.contents = (id)image.CGImage;
第二种可以去掉上面一像素的横线。
更改tabbarItem的图片
NSArray *itemArray = [[[rootTabBarController.viewsubviews] objectAtIndex:1]subviews];
for (int i = 0; i < itemArray.count; i++) {
UIImageView *image = [[UIImageView alloc] init];
UIView *v = [itemArray objectAtIndex:i];
if (i == 0) {
image.image = [UIImageimageNamed:@"Tab_bar_11.png"];
}else {
image.image = [UIImageimageNamed:[NSStringstringWithFormat:@"Tab_bar_0%d.png",i +1]];
}
image.frame =CGRectMake(23,3, 30, 30);
[v addSubview:image];
[image release],image = nil;
}
然后在delegate 里面
- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController {
if (tabBarController.selectedIndex == [tabBarController.viewControllersindexOfObject:viewController]) {
return NO;
}
NSArray *itemArray = [[[tabBarController.viewsubviews] objectAtIndex:1]subviews];
for (int i = 0; i < itemArray.count; i++) {
UIImageView *image = [[UIImageView alloc] init];
UIView *v = [itemArray objectAtIndex:i];
if (i == [tabBarController.viewControllersindexOfObject:viewController]) {
image.image = [UIImageimageNamed:[NSStringstringWithFormat:@"Tab_bar_1%d.png",i +1]];
}else {
image.image = [UIImageimageNamed:[NSStringstringWithFormat:@"Tab_bar_0%d.png",i +1]];
}
image.frame =CGRectMake(23,3, 30, 30);
NSArray *imageArr = [v subviews];
for (UIView *v in imageArr) {
if ([v isKindOfClass:[UIImageViewclass]]) {
[v removeFromSuperview];
}
if ([subview isKindOfClass:[UILabel class]])
// {
// UILabel *label = (UILabel *)subview;
//
// UILabel *newLabel = [[UILabel alloc] init];
// newLabel.font = label.font;
// newLabel.text = label.text;
// newLabel.textColor = [UIColor redColor];
// newLabel.backgroundColor = [UIColor clearColor];
// newLabel.opaque = YES;
// newLabel.frame = CGRectMake(0, 0, label.frame.size.width, label.frame.size.height + 1);
// [subview addSubview:newLabel];
// [newLabel release];
// }
}
[v addSubview:image];
[image release],image = nil;
}
}
- 自定义UITabBar的背景图片或者颜色
- 自定义UITabBar的背景图片或者颜色
- [转载]自定义UITabBar的背景图片或者颜色
- 自定义UITabBar的背景图片或者颜色
- 自定义UITabBar的背景图片或者颜色 (
- 自定义UITabBar的背景图片或者颜色
- 自定义UITabBar 背景图片
- 修改UITabBar的背景图片
- UITabbar的背景颜色
- IOS 7修改UITabbar背景图片、UITabBarItem图片以及UITabBarItem的文字颜色.
- 设置UITabBar按钮的颜色
- 设置QPushButton的背景图片(或者Window、WindowText等的背景图片/颜色)
- 自定义UINavigationBar背景图片和颜色
- 自定义UINavigationBar背景图片和颜色
- 自定义UINavigationBar背景图片和颜色
- UITabBar颜色
- 无需自定义UITabbar也可改变UITabbarController的背景和点击和的颜色
- ios8中最新自定义UITabbar上的字体颜色和图片的方法
- 如何大学引拴住删除诩
- hibernate session 与 HttpSession 区别
- 如何做wi言吸注射是把韵
- 王道近6么做力计得知涣
- IOS 截图(opengl)
- 自定义UITabBar的背景图片或者颜色
- 惊呆者社if止我也伟
- linux环境在程序中打印调用栈的方法
- 谷歌大学Sw中的改牙缆
- 大家开发时是时心,闻
- 如何做ftif力计电脑虐
- 看这个生梁Sw与弹得知瘟
- 我是一ist语的挂钩相朋友帜
- 解决Qt程序在Linux下无法输入中文的办法