该框架主要解决每次建立新项目的时候都要从新搭建项目框架的问题。
框架文件以下:javascript
--- FZHProjectInitializer
--- FZHTabBar.swift
--- FZHTabBarButton.swift
--- FZHNavigationController.swift
--- FZHTabBarViewController.swift复制代码
FZHTabBarButton.swift
中重写UIButton,改变title和iamgeView的布局,设置UIButton选中时和未选中时的字体颜色FZHTabBar.swift
中重写UIView,设置根据传入的控制器数量自动生成button的frameFZHNavigationController.swift
中,经过重写 pushViewController
和 popViewController
方法来实现隐藏自动TabBarFZHTabBarViewController.swift
中,实现 setupChildVC(_ childVC: UIViewController,title: String,imageName: String,selectImageName: String)
方法来添加子控制器selectColor
和normalColor
自定义TabBar按钮的选中状态和未选中的颜色pod 'FZHProjectInitializer'复制代码
Code:java
let fzhTabBar = FZHTabBarViewController()
fzhTabBar.selectColor = UIColor.red
fzhTabBar.normalColor = UIColor.brown
let firstVC = UIViewController()
let secondVC = UIViewController()
let thirdVC = UIViewController()
let fourVC = UIViewController()
fzhTabBar.setupChildVC(firstVC, title: "first", imageName: "", selectImageName: "")
fzhTabBar.setupChildVC(secondVC, title: "second", imageName: "", selectImageName: "")
fzhTabBar.setupChildVC(thirdVC, title: "third", imageName: "", selectImageName: "")
fzhTabBar.setupChildVC(fourVC, title: "four", imageName: "", selectImageName: "")
window?.rootViewController = fzhTabBar复制代码
这是个人第一个开源框架,可能存在不少问题,但愿你们能够在使用的过程当中提出本身发现的问题,若是你们有什么后续想加的功能能够在github提issue,我会尽本身最大的努力来实现。若是你们以为该框架给你们提供了一点便利的话,还请点个star支持一下!!!git
该项目的github地址github