本文转载至 http://www.cocoachina.com/bbs/read.php?tid=255361

我目前有个UITabBar,改了它的高度。但是我切换页签后,这个UITabBar样式又变掉了。我感觉是UITabBarItem的高度把整个页签高度撑开了。

不知道如何修改UITabBarItem,最好是能去掉文字占用的空间,因为我只要图片,不要文字的。能不能把文字移除。

回复

引用

举报顶端

major李小木

级别: 新手上路

状态: 未签到 - [3天]

UID: 292674

精华: 0

发帖: 25

可可豆: 108 CB

威望: 100 点

在线时间: 300(时)

注册时间: 2014-02-16

最后登录: 2015-04-01

沙发 :

发表于: 2014-04-11 09:58

发自: Web Page

只看该作者   小 中 大

如果不是系统样式的tabbar,建议你还是自定义一个tabbar

给你一个自定义tabbar的demo,希望可以帮到你

#import "MainTabBarController.h"

#import "HomePageViewController.h"

#import "ScanningViewController.h"

#import "NearbyViewController.h"

#import "RemindViewController.h"

#import "DeviceManager.h"

@interface MainTabBarController ()

{

UIView * _tabBarView;

}

@end

@implementation MainTabBarController

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil

{

self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];

if (self) {

}

return self;

}

- (void)viewDidLoad

{

[super viewDidLoad];

[self creatCustomTabBarView];

[self creatControllers];

}

#define NormalImages [NSArray arrayWithObjects:@"底部首页按钮",@"底部扫描按钮",@"底部附近按钮",@"底部提醒按钮", nil]

#define SelectedImages [NSArray arrayWithObjects:@"底部首页按钮高亮",@"底部扫描按钮高亮",@"底部附近按钮高亮",@"底部提醒按钮高亮", nil]

-(void)creatCustomTabBarView{

self.tabBar.hidden = YES;

_tabBarView = [[UIView alloc] initWithFrame:CGRectMake(0, [DeviceManager currentDeviceScreenHeight] - 44, 320, 44)];

for (int i = 0; i< 4; i++) {

UIButton * button = [UIButton buttonWithType:UIButtonTypeCustom];

if (i == 0) {

[button setBackgroundImage:[UIImage imageNamed:[SelectedImages objectAtIndex:i]] forState:UIControlStateNormal];

}else{

[button setBackgroundImage:[UIImage imageNamed:[NormalImages objectAtIndex:i]] forState:UIControlStateNormal];

}

[button setFrame:CGRectMake(0+80*i, 0, 80, 44)];

button.tag = 100 + i;

[button addTarget:self action:@selector(clickedButton:) forControlEvents:UIControlEventTouchDown];

[_tabBarView addSubview:button];

}

[self.view addSubview:_tabBarView];

}

-(void)creatControllers{

HomePageViewController * hpVC = [[HomePageViewController alloc] init];

ScanningViewController * sVC = [[ScanningViewController alloc] init];

NearbyViewController * nVC = [[NearbyViewController alloc] init];

RemindViewController * rVC = [[RemindViewController alloc] init];

NSArray * viewControllers = [NSArray arrayWithObjects:hpVC,sVC,nVC,rVC, nil];

NSMutableArray * controllers = [[NSMutableArray alloc] init];

for (int i = 0; i< 4; i++) {

UINavigationController * nav = [[UINavigationController alloc] initWithRootViewController:[viewControllers objectAtIndex:i]];

[controllers addObject:nav];

}

self.viewControllers = controllers;

}

-(void)clickedButton:(UIButton *)button{

for (int i = 0; i< 4; i++) {

UIButton * btn = (UIButton *)[_tabBarView viewWithTag:(100 + i)];

if (button.tag%100 == i) {

[btn setBackgroundImage:[UIImage imageNamed:[SelectedImages objectAtIndex:i]] forState:UIControlStateNormal];

self.selectedIndex = i;

}else{

[btn setBackgroundImage:[UIImage imageNamed:[NormalImages objectAtIndex:i]] forState:UIControlStateNormal];

}

}

}

- (void)didReceiveMemoryWarning

{

[super didReceiveMemoryWarning];

// Dispose of any resources that can be recreated.

@end

UITabBarItem如何更改高度的更多相关文章

  1. css设置select高度(IE,FF,Chrome)[转]

    大家都知道select是无法设置高度和边框颜色等等的在ie67下面,其他的都是可以的,所以有时候为了在所有的浏览器下显示都一致,就使用了 js的模拟,这个是大家经常碰到的,js不光要模拟外观还有模拟事 ...

  2. html5 getComputedStyle + resize 实现动态宽高度等比响应式页面设计

    序:通常我们只能控制div的宽度 而不能控制高度,在响应式页面里 如果要这个div是正方形那么必须的用媒体查询在不同的分辨率下写死宽高度 今天突发奇想研究了个 用百分比来动态控制div的高度让其与宽度 ...

  3. iOS - UITextView放在自定义cell里面-自适应高度

    textView放在自定义cell里面-自适应高度 1,textView有个属性 scrollEnabled  要设置为NO; 2,设置tableview的时候  添加这两行代码: self.tabl ...

  4. iOS:小技巧(不断更新)

    记录下一些不常用技巧,以防忘记,复制用. 1.获取当前的View在Window的frame: UIWindow * window=[[[UIApplication sharedApplication] ...

  5. iOS:小技巧(19-02-12更)

    记录下一些不常用技巧,以防忘记,复制用. 1.UIImageView 和UILabel 等一些控件,需要加这句才能成功setCorn _myLabel.layer.masksToBounds = YE ...

  6. RecyclerView使用大全

    RecylerView介绍 RecylerView是support-v7包中的新组件,是一个强大的滑动组件,与经典的ListView相比,同样拥有item回收复用的功能,这一点从它的名字recyler ...

  7. {POJ}{3897}{Maze Stretching}{二分答案+BFS}

    题意:给定迷宫,可以更改高度比,问如何使最短路等于输入数据. 思路:由于是单调的,可以用二分答案,然后BFS验证.这里用优先队列,每次压入也要进行检查(dis大小)防止数据过多,A*也可以.好久不写图 ...

  8. UI学习笔记---第十一天UITableView表视图高级-自定义cell

    自定义cell,多类型cell混合使用,cell自适应高度 自定义cell就是创建一个UITableViewCell的子类 把cell上的空间创建都封装在子类中,简化viewController中的代 ...

  9. UITabelView 高级(自定义Cell)

    自定义一个Cell 当我们要显示复杂数据的时候,例如要做一个扣扣聊天界面,或是新闻列表,系统的行已经不能满足我们的要求,这个时候我们可以通过自定义这个行,让他显示更多复杂结构的样式. 自定义cell就 ...

随机推荐

  1. 尚学堂的一个用了ExtJs的页面代码

    <html>     <head>         <meta http-equiv="Content-Type" content="tex ...

  2. asp.net 抓取新闻

    前台页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...

  3. jq 遍历元素 筛选

    var productInfo = $.grep(productData, function (value) { return value.productInfo.pId == favourite.p ...

  4. html5-本地数据库的操作

    <script src="jquery-1.8.3.js"></script><script>/* IE11不支持此操作创建数据库 解释一下op ...

  5. 任务调度Cron表达式及Quartz代码详解

    在线Cron表达式生成器 http://cron.qqe2.com/ cron表达式详解 http://www.cnblogs.com/linjiqin/archive/2013/07/08/3178 ...

  6. myeclipse的user library不自动部署到WEB-INF/lib目录下的解决办法

    右键进入项目属性 Properties 点进去 左边 MyEclipse -> Deployment Assembly 右边 Add -> JavaBuild Path Entries - ...

  7. excel weekday

    weekday(日期值)=星期几 星期天是1 星期六是7

  8. Objective-C之@protocol

    转自:http://www.cnblogs.com/hxxy2003/archive/2011/10/24/2222838.html @protocol是Objective-C中的接口定义方式,也就是 ...

  9. WEB前端的性能优化

    转自:http://www.2cto.com/kf/201604/498725.html 网站的划分一般为二:前端和后台.我们可以理解成后台是用来实现网站的功能的,比如:实现用户注册,用户能够为文章发 ...

  10. vi全文替换命令

    1,$s/str1/str2/g:从第一行到最后一行把str1替换成str2