You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
2.4 KiB
69 lines
2.4 KiB
//
|
|
// CustomTabItem.swift
|
|
// GME Remit
|
|
//
|
|
// Created by Dibya Malla Thakuri on 04/03/2023.
|
|
// Copyright © 2023 Gobal Money Express Co. Ltd. All rights reserved.
|
|
//
|
|
|
|
import UIKit
|
|
|
|
enum CustomTabItem: String, CaseIterable {
|
|
case home
|
|
case sendMoney
|
|
case profile
|
|
}
|
|
|
|
extension CustomTabItem {
|
|
var viewController: UIViewController {
|
|
switch self {
|
|
case .home:
|
|
|
|
let homeViewController = HomeWireframe().getMainView()
|
|
let navHomeViewController = SwipeNavigationController(rootViewController: homeViewController)
|
|
navHomeViewController.hero.isEnabled = true
|
|
|
|
return navHomeViewController
|
|
case .sendMoney:
|
|
|
|
let sendMoneyViewController = RecipientsWireframe().getMainView()
|
|
sendMoneyViewController.setupTabItem()
|
|
let navSendMoneyViewController = SwipeNavigationController(rootViewController: sendMoneyViewController)
|
|
navSendMoneyViewController.hero.isEnabled = true
|
|
return sendMoneyViewController
|
|
|
|
case .profile:
|
|
if let profileViewController = UIStoryboard(name: "Setting", bundle: nil)
|
|
.instantiateViewController(withIdentifier: "SettingViewController") as? SettingViewController {
|
|
profileViewController.setupTabItem()
|
|
let navProfileViewController = SwipeNavigationController(rootViewController: profileViewController)
|
|
return navProfileViewController
|
|
}
|
|
return UIViewController()
|
|
|
|
}
|
|
}
|
|
|
|
var icon: UIImage? {
|
|
switch self {
|
|
case .home:
|
|
return UIImage(named: "tab-home")?.withRenderingMode(.alwaysOriginal)
|
|
case .sendMoney:
|
|
return UIImage(named: "tab-contact")?.withRenderingMode(.alwaysOriginal)
|
|
case .profile:
|
|
return UIImage(named: "tab_profile")?.withRenderingMode(.alwaysOriginal)
|
|
}
|
|
}
|
|
|
|
var selectedIcon: UIImage? {
|
|
switch self {
|
|
case .home:
|
|
return UIImage(named: "tab-home-selected")?.withRenderingMode(.alwaysOriginal)
|
|
case .sendMoney:
|
|
return UIImage(named: "tab-contact-selected")?.withRenderingMode(.alwaysOriginal)
|
|
case .profile:
|
|
return UIImage(named: "tab_profile_selected")?.withRenderingMode(.alwaysOriginal)
|
|
}
|
|
}
|
|
}
|
|
|