设置tabBar的图片/高度/title颜色
实现了一下内容:
1.设置tabBarItem选中及非选中时的图片,图片充满item;
2.调整了 tabBar 高度;
3.改变了title颜色及位置.
------------代码如下:
---TabBarC.m---
#import "TabBarC.h"
#import "ViewController.h"
#import "SecViewController.h"
#define CustomTabBarHeight 60//不需要改变高度就换成self.tabBar.frame.size.height
#define CustomTabBarWidth self.tabBar.frame.size.width
@interface TabBarC ()
@end
@implementation TabBarC
- (void)viewDidLoad {
[super viewDidLoad];
//初始化子控制器
ViewController *onevc = [[ViewController alloc] init];
SecViewController *twovc = [[SecViewController alloc] init];
//将VC, 未选中图,选中图 放到数组里
NSArray *onevcArr = @[onevc,@"one_icon",@"sel_one_icon"];
NSArray *twovcArr = @[twovc,@"two_icon",@"sel_two_icon"];
NSArray *vcArr = @[onevcArr,twovcArr];
[self addToTabBar:vcArr];
}
//添加子控制器到 tabBar
- (void)addToTabBar:(NSArray *)array{
for (NSInteger i=0; i<array.count; i++) {
NSArray *everyVCArr = array[i];
UIViewController *everyVC = everyVCArr[0];
everyVC.title = @"vc标题";
everyVC.view.backgroundColor = [UIColor whiteColor];
//将图片插入的位置向下移动5.5 ; top和 bottom不为相反数点击时图片会变
everyVC.tabBarItem.imageInsets = UIEdgeInsetsMake(5.5, 0, -5.5, 0);
//tabBarItem的宽
NSInteger itemWidth = CustomTabBarWidth/array.count;
#pragma -------注意:(不设置tabBarItem.image的话,其他tabBarItem的设置都无效)
#pragma -------这里没有准备不同尺寸的合适的图片,为了展示效果直接将图片缩放到合适尺寸,缩放步骤可省略
//--------设置非选中时的图片,图设置为原始状态
everyVC.tabBarItem.image = [[self editImage:everyVCArr[1] toSize:CGSizeMake(itemWidth, CustomTabBarHeight)]imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
//设置选中时的图片,图设置为原始状态
everyVC.tabBarItem.selectedImage = [[self editImage:everyVCArr[2] toSize:CGSizeMake(itemWidth, CustomTabBarHeight)]imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
//调整 tabBarItem 标题位置
[everyVC.tabBarItem setTitlePositionAdjustment:UIOffsetMake(0, 5)];
//设置字体颜色
NSMutableDictionary *textAttribute = [NSMutableDictionary dictionary];
textAttribute[NSForegroundColorAttributeName] = [UIColor blackColor];
[everyVC.tabBarItem setTitleTextAttributes:textAttribute forState:UIControlStateNormal];
//设置字体颜色
[everyVC.tabBarItem setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor redColor]} forState:UIControlStateSelected];
everyVC.tabBarItem.title = @"啦啦啦啦啦啦";
UINavigationController *nvc = [[UINavigationController alloc]initWithRootViewController:everyVC];
[self addChildViewController:nvc];
}
NSLog(@"
设置tabBar的图片/高度/title颜色的更多相关文章
- NX二次开发-UFUN设置工程图PNG图片高度UF_DRF_set_image_height
#include <uf.h> #include <uf_drf.h> UF_initialize(); //插入PNG char* file_name = "D:\ ...
- iOS TabbarController 设置底部Toolbar图片和文字颜色选中样式
提取公共方法: -(void)createChildVcWithVc:(UIViewController *)vc Title:(NSString *)title image:(NSString *) ...
- 使用系统UITabbarItem自定义图片显示原本颜色和自定义文字颜色
...... ThirdViewController *thirdVC = [[ThirdViewControlleralloc]initWithTitle:@"搜索信息"]; / ...
- geiUItabBarItem设置图片颜色和title颜色
设置图片颜色 tabBarVCtrl.tabBar.selectedImageTintColor = [UIColor greenColor];//设置tabBarItem选中时的字图颜色,iOS 8 ...
- UITabBar-UITabBarItem图片的背景颜色属性和文字的颜色大小设置
UITabBarItem设置的图片选中状态下默认的是蓝色,如何改变它的颜色为图片自带的颜色呢? typedef NS_ENUM(NSInteger, UIImageRenderingMode) { / ...
- iOS开发之--使用storyboard下,tabbar小图标和文字颜色的设置
在开发项目的时候,如果是使用故事版设计的架构,那么在设置tabbar小图标的时候,可能会出现一点小问题, 成功的设置方法如下: 1.设置seleectedImage和image,其实就是非选中状态的图 ...
- 设置 TabBarItem 选中时的图片及文字颜色
TabBarController 是在 ios 开发过程中使用较为频繁的一个 Controller,但是在使用过程中经常会遇到一些问题,例如本文所要解决的,如何修改 TabBar 选中时文字及图片的颜 ...
- 设置TabBarItem选中时的图片及文字颜色
TabBarItem选中时,默认文字和图片都变为蓝色.使用以下代码可以进行修改. MainViewController *mainVC = [[MainViewController alloc] in ...
- 设置TabBar图片
设置TabBar图片 // 拿到 TabBar 在拿到想应的item UITabBar *tabBar = _tabBarController.tabBar; UITabBarItem *item0 ...
随机推荐
- react-native-linear-gradient颜色渐变
目录 一 安装 二 使用 2.1 colors 2.2 start / end eg1:斜角渐变 eg2: 从左到右 2.2 locations eg1: 0.4是渐变的起点,0.6是渐变的终点 一 ...
- CryptoJS中WordArray
目录 WordArray (An array of 32-bit words. 1.1 : 初始化 1.2 : WordArray 对象 ->16进制字符串 1.3 : 16进制字符串 -> ...
- Selenium之单选框操作
单选框操作: 何为单选框?就是永远只能选中一个选项的意思.一般单选框的图标都是呈圆形的.我们通过selenium可直接定位到被选中的选项上,然后用click方法实现点击. 下面附上一段rb.html代 ...
- iSensor APP 之 摄像头调试 OV3640 OV2640 MT9d112 ov5642
iSensor APP 之 摄像头调试 OV3640 OV2640 MT9d112 iSensor app 非常适合调试各种摄像头,已测试通过的sensor有: l OV7670.OV7725.O ...
- 【React】393 深入了解React 渲染原理及性能优化
如今的前端,框架横行,出去面试问到框架是常有的事. 我比较常用React, 这里就写了一篇 React 基础原理的内容, 面试基本上也就问这些, 分享给大家. React 是什么 React是一个专注 ...
- 【MobX】391- MobX 入门教程(下)
点击上方"前端自习课"关注,学习起来~ 三.MobX 常用 API 介绍 3. 修改可观察数据 在上一部分内容中,我们了解到,对可观察的数据做出反应的时候,需要我们手动修改可观察数 ...
- Linux之CentOS设置别名与屏蔽别名
一.环境 CentOS6.8 二.设置别名 ◆别名功能:让grep符合的关键字高亮 1.临时生效 [root@localhost ~]#alias grep="grep --color=au ...
- python 中 and or
在Python 中,and 和 or 执行布尔逻辑演算,如你所期待的一样,但是它们并不返回布尔值:而是,返回它们实际进行比较的值之一. 一.and: 在布尔上下文中从左到右演算表达式的值,如果布尔上下 ...
- cd ..、cd / 和 cd ~ 的区别
cd ..是回到上一级目录 cd . 是当前目录 cd / 是回到根目录 cd ~ 回到用户主目录
- java程序员面试经历(不忘初心,永不放弃,方得始终)。
其实一直想静下心好好写一点博客,记录下青春,但一直忙于学习,写bug.....转眼间2017只剩下最后几天,岁月无情划过,不留痕迹,唯有稀疏地中海.哈哈,本篇文章主要是想分享下刚毕业入门找工作的一点小 ...