利用系统自带的UITabBarController纯代码搭建TabBar

news/2024/7/20 21:33:09 标签: iOS, uitabbarcontroller, TabBar

1.创建UITabBarController文件,例如夜宵App的TabBar,文件名定义为YeXiaoTabBarController

2.创建完成后,在.m文件的viewDidLoad方法中写入以下代码:

    self.tabBar.translucent = NO;
    self.tabBar.tintColor = [UIColor whiteColor];
    
    UIImage *background = [[UIImage imageNamed:@"背景图片"] resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 10, 10) resizingMode:UIImageResizingModeStretch];
    [self.tabBar setBackgroundImage:background];
    
    UIImage *selectedBackground = [[UIImage imageNamed:@"选中后的背景图片"] resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 10, 10) resizingMode:UIImageResizingModeStretch];
    [self.tabBar setSelectionIndicatorImage:selectedBackground];

3.创建TabBar的各个item对应的子控制器,例如店铺(ShopViewController)、个人设置(SetViewComtroller) 等等,并在子控制器中重写init方法,例如个人设置中重写init方法代码如下:

-(instancetype)init{
    if (self = [super init]) {
        self.title = @"个人设置";
        self.tabBarItem.image = [UIImage imageNamed:@"原始图片"];
        self.tabBarItem.selectedImage = [UIImage imageNamed:@"选中后的图片"];
    }
    return self;
}


4.将各个子控制器添加到YeXiaoTabBarController中,继续在.m文件的viewDidLoad方法中写入以下代码:

    ShopViewController *shopVC = [[ShopViewController alloc]init];
    ScanViewController *scanVC = [[ScanViewController alloc]init];
    SetViewController *setVC = [[SetViewController alloc]init];
    
    UINavigationController *shopNavi = [[UINavigationController alloc]initWithRootViewController:shopVC];
    UINavigationController *scanNavi = [[UINavigationController alloc]initWithRootViewController:scanVC];
    UINavigationController *setNavi = [[UINavigationController alloc]initWithRootViewController:setVC];
    
    self.viewControllers = @[shopNavi ,scanNavi ,setNavi];



http://www.niftyadmin.cn/n/704472.html

相关文章

效果差学费贵售后难,VIPKID米雯娟的野心不能只靠“烧钱”营销

VIPKID是当前知名度较高的在线少儿英语培训机构。 据某行业数据机构显示,VIPKID目前已获得了D轮融资,估值达200亿元。VIPKID最近的一轮融资金额为5亿美金,是今为止全球在线教育领域最大一笔融资。 VIPKID的知名度除了来自多轮次的融资报道&am…

Java云原生(Spring Native)开发初体验报告

不愿关注的朋友,请访问:https://baofeidyz.com/javaspringnative 背景 前段时间在考虑做一款小工具,功能非常简单,调用多个HTTP接口,分析处理返回的数据,生成Excel文件即可。 为了尽量的让这个工具的实用性…

基于jupyter的波士顿房价预测入门指南

jupyter是python常用编程环境。 建议读者安装anaconda,这个集成开发环境自带了很多包。 直到2018年9月1日仍为最新版本的anaconda下载链接: https://pan.baidu.com/s/1pbzVbr1ZJ-iQqJzy1wKs0A 密码: g6ex 官网下载地址:https://repo.anaconda.com/archiv…

简单聊天界面

1.在Main.storyboard中创建控制器和控件&#xff0c;添加约束&#xff0c;设置TextField 如图&#xff1a; 2.为TableView在控制器上添加delegate、datasource&#xff0c;为textField添加delegate 3.在ViewController.m中添加代码 interface ViewController ()<UITableView…

【杂文】CM 倒下了,但还有这些第三方安卓 ROM 让你刷个痛快

写在前面&#xff1a;本文内容转载于微信公众号 雷科技 并已经获得作者授权&#xff0c;若需要转载&#xff0c;请联系 雷科技 对于 Android 发烧友而言&#xff0c;最近最为重磅的消息就莫过于第三方 Android ROM 之首的 CyanogenMod&#xff08;简称 CM&#xff09;宣布停止固…

CocoaPod的安装

更新以前大家都是根据淘宝镜像来安装cocoapods&#xff0c;此篇文章也和大多数博文内容相仿。后来换电脑时&#xff0c;同事说淘宝镜像已经不能用了&#xff0c;网上又重新查看教程&#xff0c;确实都是这么说的&#xff01;&#xff08;好吧&#xff0c;我确实比较懒&#xff…

CocoaPod的使用

CocoaPod的安装 安装CocoaPods成功之后&#xff0c;首先会找一些第三方库以及最新版本&#xff08;要知道想用什么库才能搜索&#xff09; 1.寻找第三方库是否存在&#xff0c;以及版本 &#xff08;Masonry是第三方库名称&#xff09; pod search Masonry 2.使用cd 指令&a…

Python读取大文件的坑“与内存占用检测

python读写文件的api都很简单&#xff0c;一不留神就容易踩”坑“。笔者记录一次踩坑历程&#xff0c;并且给了一些总结&#xff0c;希望到大家在使用python的过程之中&#xff0c;能够避免一些可能产生隐患的代码。1.read()与readlines()&#xff1a; 随手搜索python读写文件的…