//自定义标签工具栏
- (void) initTabBarView{
//
self.bottomView = [[UIView alloc]initWithFrame:CGRectMake(, kScreenHeight-tabViewHeight-,kScreenWidth, tabViewHeight+)];
[self.view addSubview:self.bottomView]; UIView *upLine = [[UIView alloc]initWithFrame:CGRectMake(, ,kScreenWidth, 0.5)];
upLine.backgroundColor = RGB(0xd4, 0xdd, 0xe3);
upLine.alpha = 0.16;
[self.bottomView addSubview:upLine]; UIView *downLine = [[UIView alloc]initWithFrame:CGRectMake(, 0.5 ,kScreenWidth, 0.5)];
downLine.backgroundColor = RGB(0x34, 0x53, 0x6a);
downLine.alpha = 0.16;
[self.bottomView addSubview:downLine]; _tabBarView = [[UIView alloc]initWithFrame:CGRectMake(, , kScreenWidth, tabViewHeight)];
_tabBarView.backgroundColor = [UIColor whiteColor]; [self.bottomView addSubview:_tabBarView]; NSArray *textArr = @[@"通讯录",@"常用联系人",@"个人中心"];
NSArray *imageNameArray = @[@"tab_ico_contact_nor.png",@"tab_ico_contact_hl.png",
@"tab_ico_collect_nor.png",@"tab_ico_collect_hl.png",
@"tab_ico_me_nor.png",@"tab_ico_me_hl.png"];
int tabCount =(int)textArr.count; NSMutableArray *spaceViews = [NSMutableArray arrayWithCapacity:tabCount+]; for (int i=; i < tabCount+; i++) {
UIView *v = [UIView new];
[spaceViews addObject:v];
[self.tabBarView addSubview:v]; [v mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(tabViewHeight);
make.centerY.mas_equalTo(self.tabBarView.mas_centerY);
}];
}
[spaceViews[] mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.tabBarView.mas_left); }];
for(int i= ;i< textArr.count;i++)
{
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
btn.tag = +i;
[btn setImage:[UIImage imageNamedWithoutCache:imageNameArray[i*] ] forState:UIControlStateNormal];
[btn setImage:[UIImage imageNamedWithoutCache:imageNameArray[i*+] ] forState:UIControlStateSelected];
[btn setImage:[UIImage imageNamedWithoutCache:imageNameArray[i*+] ] forState:UIControlStateHighlighted];
[btn setTitle:textArr[i] forState:UIControlStateNormal];
[btn setTitleColor:RGB(0x7c, 0x86, 0x8d) forState:UIControlStateNormal];
[btn setTitleColor:RGB(, 0x9c, 0xff) forState:UIControlStateHighlighted];
[btn setTitleColor:RGB(, 0x9c, 0xff) forState:UIControlStateSelected];
btn.titleLabel.font = [UIFont systemFontOfSize: /];
[btn addTarget:self action:@selector(btnAction:) forControlEvents:UIControlEventTouchUpInside];
btn.frame = CGRectMake(kScreenWidth/tabCount*i + kScreenWidth/(tabCount*), (tabViewHeight-btnHeight)/,kScreenWidth/(*tabCount) , btnHeight); //kScreenWidth/(2*tabCount) btn.bounds.size.width
btn.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;
[btn setTitleEdgeInsets:UIEdgeInsetsMake(btn.imageView.image.size.height, -btn.imageView.image.size.width, , )];
[btn setImageEdgeInsets:UIEdgeInsetsMake(, ,btn.titleLabel.bounds.size.height, -btn.titleLabel.bounds.size.width)]; [self.tabBarView addSubview:btn]; [spaceViews[i+] mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(btn.mas_right);
make.width.equalTo(((UIView *)spaceViews[i]).mas_width);
}]; [btn mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.equalTo(self.tabBarView.mas_top).offset((tabViewHeight-btnHeight)/);
make.bottom.equalTo(self.tabBarView.mas_bottom).offset(-(tabViewHeight-btnHeight)/);
make.height.equalTo(@);
make.left.equalTo(((UIView *)spaceViews[i]).mas_right);
make.right.equalTo(((UIView *)spaceViews[i+]).mas_left);
}];
if(i == )
{
[btn setSelected:YES];
} } [spaceViews[tabCount] mas_makeConstraints:^(MASConstraintMaker *make) {
make.right.equalTo(self.tabBarView.mas_right);
}]; }

自动布局(Masonry)设置tabbar的更多相关文章

  1. 设置tabbar的角标与第三方库Masonry的基本使用

    // 设置tabbar的角标 [[[[[self tabBarController] viewControllers] objectAtIndex: 0] tabBarItem] setBadgeVa ...

  2. StoryBoard 设置TabBar SelectImage 和tintColor

    如图:StoryBoard 结构是 Tabbar + Navi + ViewController 需求:需要修改TabBar的Image 和SelectImage 设置Image 设置SelectIm ...

  3. 设置TabBar图片

    设置TabBar图片 // 拿到 TabBar 在拿到想应的item UITabBar *tabBar = _tabBarController.tabBar; UITabBarItem *item0 ...

  4. 设置tabBar、使用第三方插件和自定义组件使用简单实例

    创建小程序项目进入时填写,因需要用上第三方插件,所以要填上开发者的APPID,前往微信公众平台去注册一个账号获取APPID,在设置=>开发设置可以查看相关appid信息 简单思路 底部导航添加三 ...

  5. iOS自动布局——Masonry详解

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由鹅厂新鲜事儿发表于云+社区专栏 作者:oceanlong | 腾讯 移动客户端开发工程师 前言 UI布局是整个前端体系里不可或缺的一环 ...

  6. 项目中 -- 设置tabBar样式 (旅游局)

    - (void)addChildViewController:(UIViewController *)ViewController image:(UIImage *)image selectImg:( ...

  7. iOS AutoLayout自动布局&Masonry介绍与使用实践

    Masonry介绍与使用实践:快速上手Autolayout http://www.cnblogs.com/xiaofeixiang/p/5127825.html http://www.cocoachi ...

  8. iOS开发 masonry 设置tableHeadView

    最近做公司项目,使用到到tableHeadView,一直习惯用masonry来设置约束,但是设置tableHeadView没有那么的简单.先看下效果图: 视图层次结构是这样的: 基础的创建工程项目之类 ...

  9. 设置TabBar分栏控制器上图片的大小问题

    我们都知道,iOS因为屏幕分辨率的问题,UID在交付我们iOS开发人员程序配图的时候,一般是三套图,分别对应三种不同的分辨率,对不同size的屏幕系统会自动使用不同像素的图片,我们只需要在命名时给三套 ...

随机推荐

  1. ThinkPHP讲解(一)框架基础

    ThinkPHP框架知识点过于杂乱,接下来将以问题的形势讲解tp(ThinkPHP的简写) 1.tp框架是什么,为什么使用是它? 一堆代码的集合,里边有变量.函数.类.常量,里边也有许多设计模式MVC ...

  2. NOIP200503采药

                          NOIP200503采药 [问题描述] 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师.为此,他想拜附近最有威望的医师为师.医师为了判断他的资质, ...

  3. Openstack的删除错误网桥,虚拟网络

    在实验openstack的各种网络模式时,可能会产生一些错误的网络指向,需要删除那些网桥. 执行前 [root@node-9 ~]# ifconfig br40 Link encap:Ethernet ...

  4. android 学习随笔十(网络:get、post提交数据)

    1.get public class Tools { public static String getTextFromStream(InputStream is){ byte[] b = new by ...

  5. selenium滚动条

    element = self.brower.find_element_by_id('xxx')brower.execute_script('arguments[0].scrollIntoView(); ...

  6. laravel事务小例子

    发生异常则自动回滚,正常则自动提交,示例如下: DB::connection('vshare')->transaction(function() use($id,$reason,$refuser ...

  7. mac下多个php版本快速切换的方法是怎么样

    一.使用brew安装php多版本方法# brew install php56# brew install php70二.安装切换工具# brew install php-version# source ...

  8. POJ 1260:Pearls(DP)

    http://poj.org/problem?id=1260 Pearls Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 8 ...

  9. js词法作用域规则

    function foo() {console.log( a ); // 2不是3} function bar() {var a = 3;foo();} var a = 2;bar(); js中的作用 ...

  10. [BIM]BIM中IFC介绍

    ifc是干什么的,看下图 ifc架构图 下文转自:http://www.bimcn.org/cjwt/201506053789.html IFC目前是国际通用的BIM标准,现在很多BIM软件都采用其作 ...