swift纯代码UITabBarController的使用
最近在OC的基础上开始学习swift,以下是swift纯代码搭建项目架构效果图
创建一个项目 选择swift语言
将项目中的main.storyboard ,ViewController ,LaunchScreen.storyboard 删除,并将main取消为主窗口
以上操作跟OC纯代码项目架构操作一样,接下来直接上代码
在AppDelegate 类中创建主窗口并设置根控制器
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {window = UIWindow.init()self.window?.frame = UIScreen.main.boundsself.window?.rootViewController = QCTabBarController()self.window?.makeKeyAndVisible()return true}
自定义一个QCTabBarController继承自UITabBarController ,在该控制器中添加子控制器如下:
override func viewDidLoad() {super.viewDidLoad()//首页let homeVC = QCHomeVC()self.addChildViewController(childerVC: homeVC, title: "首页", normalImg: "shouye_normal", selectedImg: "shouye_selected")//嘉宝箱let treasureBoxVC = QCTreasureBoxVC()self.addChildViewController(childerVC: treasureBoxVC, title: "嘉宝箱", normalImg: "jiabaoxiang_normal", selectedImg: "jiabaoxiang_selected")//我嘉let myShowVC = QCMyShowVC()self.addChildViewController(childerVC: myShowVC, title: "我嘉", normalImg: "shouye_normal", selectedImg: "shouye_selected")//会员中心let memberCenterVc = QCMemberCenterVC()self.addChildViewController(childerVC: memberCenterVc, title: "会员中心", normalImg: "huiyuan_normal", selectedImg: "huiyuan_selected")self.selectedIndex = 0}//添加子控制器func addChildViewController(childerVC:UIViewController,title:NSString,normalImg:NSString,selectedImg:NSString) {self.tabBarItem.title = title as Stringlet color = UIColor.hexStringToColor(hexString:"#3257d4")self.tabBar.tintColor = colorchilderVC.title = title as Stringvar norImg = UIImage(named:normalImg as String)norImg = norImg?.withRenderingMode(UIImageRenderingMode.alwaysOriginal)var selImg = UIImage(named:selectedImg as String)selImg = selImg?.withRenderingMode(UIImageRenderingMode.alwaysOriginal)let tabItem = UITabBarItem(title: title as String, image: norImg,selectedImage: selImg)let naVc = QCNaVC()naVc.tabBarItem = tabItemnaVc.addChildViewController(childerVC)self.addChildViewController(naVc)}
swift纯代码UITabBarController的使用相关推荐
- iOS(一):Swift纯代码模式iOS开发入门教程
Swift纯代码模式iOS开发入门教程 项目初始化(修改为纯代码项目) 安装第三方库(以`SnapKit`库为例) 桥接OC库(QMUIKit) 封装视图并进行导航跳转 示例:使用 `TangramK ...
- ios swift 纯代码自定义view(控件) XYswitchView
文章目录 1.截图 2.代码 2.1 XYswitchView.swift 2.2 LoginVC.swift 3.参考博客 1.截图 2.代码 2.1 XYswitchView.swift impo ...
- ios swift 纯代码设置UITableViewCell的style
1.dequeueReusableCell(withIdentifier:)方法不需要注册 func tableView(_ tableView: UITableView, cellForRowAt ...
- swift纯代码实现UITableview总结一
在swift中没有了宏定义这个概念,所以在获取屏幕宽高时,可以设置其为常量 let SRC_WIDTH = UIScreen.main.bounds.width let SRC_HEIGHT = UI ...
- ios14.3开发之使用纯代码创建UITabbarController
ios14.3开发之使用纯代码创建UITabbarController 这里我们IOS版本14.3.Xcode 版本选择的是.12.3版本:来自apple最新的xcode版本,该版本支持最新的swif ...
- [纯代码] Swift+UIKit · 搭建第一个iOS APP项目
本文目录 前言 创建一个纯代码编辑的Swift + UIKit项目 创建一个Swift + UIKit项目 让它变成纯代码编辑的 让你的APP打开指定的ViewController 创建一个窗口 编辑 ...
- 【Swift Mac开发】纯代码创建NSViewController
对于习惯了纯代码iOS开发的人来说,刚接触Mac端开发时,是非常不友好的,网上所有的教程都是通过Xib或StoryBoard的方式创建NSViewController,而且苹果文档也是鼓励用Xib的开 ...
- Swift5.x使用纯代码创建NavigationTab控制器设置启动图Wb第1部分
Swift5.x使用纯代码创建NavigationTab控制器设置启动图Wb第1部分 前言 1 使用纯代码创建NavigationTab控制器必须会,也可使用storyboard拖控件,没有代码创建灵 ...
- [译] 重写 loadView() 方法使 Swift 视图代码更加简洁
原文地址:Writing Cleaner View Code in Swift By Overriding loadView() 原文作者:Bruno Rocha 译文出自:掘金翻译计划 本文永久链接 ...
最新文章
- Electron、QT和JAVA PC桌面开发技术比较
- sublime设置tab为四个空格
- linux 系统kill用法
- DVWA--Command Injection(命令执行)--四个等级
- Cadence 电源完整性仿真实践(二)
- Python调用百度接口(情感倾向分析)和讯飞接口(语音识别、关键词提取)处理音频文件...
- 对JDBC操作数据库的简单封装
- mysql解压版怎么添加服务_Windows系统下MySQL添加到系统服务方法(mysql解压版)
- SNMP学习(2)——SNMP实战
- 59. Spiral Matrix Spiral Matrix II
- LibMesh 数据结构类
- 解决fabric编译失败(make: *** [release/linux-amd64/bin/configtxgen] Error 1)
- easyui模板中的disabled的使用
- 职工档案管理系统报告与c语言,[职工档案管理系统C语言.doc
- 一个「秒搜」豆瓣好书的网站
- 如何获取到javasript链接的网址
- 如何做好提升领导力培训PPT课件?
- 1146-Table ‘performance schema.session variables‘ doesn‘t exist
- GSoC 从开始到中选
- axios如何二次封装
热门文章
- 大盘下跌时,如何做空股市,继续赚钱?
- (二)树莓派系列教程:树莓派4B手动连接wifi,远程控制。命令行界面、桌面界面
- python 输出纯音频_提取视频中的音频python三行程序搞定
- Cortex-M3 处理器内核
- 缓存Cache概述——缓存Cache1.1.1
- Hyper-V (window 10 家庭版安装 Hyper-V)
- 碧波庭---第十五届中国诚信企业家大会 — 碧波庭荣获 “中国美胸产业诚信品牌” !
- Linux上搭建Discuz论坛
- SEO是什么意思?为什么要做SEO?
- 流量劫持是什么?常用方法有哪些?