swift初始化一个项目导航栏和标签栏(nav和tabbar)
2017-04-05 17:09
246 查看
第一步:创建一个UITabBarController的类,全部代码如下,
里面包含了导航栏,所以在创建的时候只要集成这个类,然后,设置父类里面的数组的值,就好了
import UIKit
class BaseTabBarController: UITabBarController {
}
extension BaseTabBarController{
}
第二部:创建一个类,继承上面封装好的tabbarcontrol就好了
import UIKit
class MainViewController: BaseTabBarController {
}
//OK几句话就解决了问题
里面包含了导航栏,所以在创建的时候只要集成这个类,然后,设置父类里面的数组的值,就好了
import UIKit
class BaseTabBarController: UITabBarController {
var titles = [String]() var selectedImgNames = [String]() var normalImgNames = [String]() var VCs = [UIViewController]() override func viewDidLoad() { super.viewDidLoad() print(titles.count) setUpUI() }
}
extension BaseTabBarController{
fileprivate func setUpUI(){ for item in 0..<titles.count { let vc = VCs[item] vc.tabBarItem.image = UIImage.init(named: normalImgNames[item])?.withRenderingMode(.alwaysOriginal) vc.tabBarItem.title = titles[item] vc.tabBarItem.selectedImage = UIImage.init(named: selectedImgNames[item])?.withRenderingMode(.alwaysOriginal) vc.tabBarItem!.setTitleTextAttributes([NSForegroundColorAttributeName: UIColor.lightGray], for: UIControlState()) vc.tabBarItem!.setTitleTextAttributes([NSForegroundColorAttributeName: UIColor.red], for: .selected) let navc = UINavigationController.init(rootViewController: vc) vc.navigationItem.title = titles[item] self.addChildViewController(navc) } }
}
第二部:创建一个类,继承上面封装好的tabbarcontrol就好了
import UIKit
class MainViewController: BaseTabBarController {
override func viewDidLoad() { titles = ["流程管理","业务管理","客户管理","租后管理","智能监控"] selectedImgNames = ["tabbar03_selected","tabbar03_selected","tabbar03_selected","tabbar03_selected","tabbar03_selected"] normalImgNames = ["tabbar03_normal","tabbar03_normal","tabbar03_normal","tabbar03_normal","tabbar03_normal"] VCs = [processManagementVC(),businessManagementVC(),ustomerManagementVC(),afterRentManagementVC(),intelligentMonitoringVC()] super.viewDidLoad() }
}
//OK几句话就解决了问题
相关文章推荐
- 开发Struts 2项目遇到的一个问题,就是在struts-tags标签库下没有了s:datetimepicker标签的解决办法
- 项目设置一个类似HTML map标签功能的Android组件
- Swift UI专项训练34 TabBar底部导航栏
- 做一个项目前搭建一个tabBar(一)框架
- 苹果公司的新的编程语言 Swift 高级语言(十一)--初始化类的析构函数的一个实例
- Flex中如何在Tree控件中指定一个自定义的label函数使其返回的标签名字为叶项目的名称的例子
- swift 2.0 与 OC 相比较,标签栏和导航栏书写的差别
- 一个项目中初始化的问题
- 昨天做项目的时候,遇到了一个tabbar 影响底部按钮的问题
- swift笔记之新项目中navigationController的创建和初始化
- 用一个随项目启动而初始化的servlet读取配置环境,参数的properties文件
- Swift & Objc 在同一个项目中的使用
- 同一个项目中使用Swift和Objective-C
- 怎么让一个项目里swift与OC可以兼容混合开发?
- 第十三周项目1.5创建一个长度为16的数组,并初始化前15个,输入b,并将其插入到a【0】,输出数组
- [开源项目] 一个类似HTML map标签功能的Android组件
- 在同一个项目中使用Swift 和 Objective-C
- 痛定思痛-》》准备用swift改版一个项目
- swift-导航栏和tabbar(系统自带)
- swift创建一个空项目