- December 30, 2024
- Mins Read
A lightweight customized tabbar view.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
![]() |
Manually – Add HHTabBarView/Source
folder to your Project. And you’re good to use HHTabBarView
.
CocoaPods: – pod 'HHTabBarView'
You can read the CHANGELOG file for a particular release.Important: Please note that HHTabBarView
is currently not supports UIStoryBoard
. Means, you will have to create HHTabBarView
programmatically. It is advised to setup HHTabBarView
in AppDelegate.swift
for your easyness.
HHTabBarView
. 📌
let hhTabBarView = HHTabBarView.shared
UITabBarController
. 📌
let referenceTabBarController = HHTabBarView.shared.referenceUITabBarController
UITabBarController
📌
func setupReferenceUITabBarController() -> Void {
//Creating a storyboard reference
let storyboard = UIStoryboard.init(name: “Main”, bundle: Bundle.main)
//Creating navigation controller for navigation inside the first tab.
let navigationController1: UINavigationController = UINavigationController.init(rootViewController: storyboard.instantiateViewController(withIdentifier: “FirstViewControllerID”))
//Creating navigation controller for navigation inside the second tab.
let navigationController2: UINavigationController = UINavigationController.init(rootViewController: storyboard.instantiateViewController(withIdentifier: “SecondViewControllerID”))
//Update referenced TabbarController with your viewcontrollers
referenceTabBarController.setViewControllers([navigationController1, navigationController2], animated: false)
}
HHTabBarView
📌
//Update HHTabBarView reference with the tabs requires.
func setupHHTabBarView() -> Void {
//Default & Selected Background Color
let defaultTabColor = UIColor.white
let selectedTabColor = UIColor.init(red: 234/255, green: 218/255, blue: 195/255, alpha: 1.0)
let tabFont = UIFont.init(name: “Helvetica-Light”, size: 14.0)
//Create Custom Tabs
let t1 = HHTabButton.init(withTitle: “Calendar”, tabImage: UIImage.init(named: “Calendar”)!, index: 0)
t1.titleLabel?.font = tabFont
t1.titleLabel?.textColor = UIColor.black
t1.setHHTabBackgroundColor(color: defaultTabColor, forState: .normal)
t1.setHHTabBackgroundColor(color: selectedTabColor, forState: .selected)
let t2 = HHTabButton.init(withTitle: “Refresh”, tabImage: UIImage.init(named: “Refresh”)!, index: 1)
t2.titleLabel?.font = tabFont
t2.titleLabel?.textColor = UIColor.black
t2.setHHTabBackgroundColor(color: defaultTabColor, forState: .normal)
t2.setHHTabBackgroundColor(color: selectedTabColor, forState: .selected)
//Note: As HHTabButton are subclassed of UIButton so you can modify it as much as possible.
//Set Custom Tabs
hhTabBarView.tabBarTabs = [t1, t2]
//Set Default Index for HHTabBarView.
hhTabBarView.defaultIndex = 1
//Show Animation on Switching Tabs
hhTabBarView.tabChangeAnimationType = .none
//Handle Tab Change Event
hhTabBarView.onTabTapped = { (tabIndex) in
print(“Selected Tab Index:\(tabIndex)”)
}
}
window
of your application inside the 📌
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
//Setup HHTabBarView
setupReferenceUITabBarController()
setupHHTabBarView()
//Setup Application Window
self.window = UIWindow.init(frame: UIScreen.main.bounds)
self.window?.rootViewController = self.referenceTabBarController
self.window?.makeKeyAndVisible()
return true
}