| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- //
- // CustomTabBarController.swift
- // QuickSearchLocation
- //
- // Created by mac on 2024/4/10.
- //
- import UIKit
- class CustomTabBarController: UITabBarController {
-
- lazy var blurTabBar: UIView = {
-
- let _blurTabBar = UIView(frame: CGRect(x: 0, y: -1, width: QSLConst.qsl_kScreenW, height: QSLConst.qsl_kScreenH))
- _blurTabBar.isUserInteractionEnabled = true
- self.tabBar.addSubview(_blurTabBar)
- return _blurTabBar
- }()
- override func viewDidLoad() {
- super.viewDidLoad()
-
- // 设置 tabbar 样式
- self.setTabBarAppearence()
- // 添加 tab 页
- self.addFoundationTab()
- // 默认进入页面到主页
- self.selectedIndex = 1
-
- managerAppOnlyLaunch()
- }
-
- //管理app启动埋点
- func managerAppOnlyLaunch() {
-
- guard UserDefaults.standard.string(forKey: "MANAGER_APP_ONLY_LAUNCH") != nil else {
- UserDefaults.standard.set("YES", forKey: "MANAGER_APP_ONLY_LAUNCH")
- UserDefaults.standard.synchronize()
- //只有app第一次启动才会埋点
- QSEventHandle.gravityPush(eventName: QSLGravityConst.app_launch, eventProps: ["id": 02001])
- return
- }
- }
-
-
- func addFoundationTab() {
-
- self.addFriendTab()
- self.addHomeTab()
- self.addCheckTab()
- self.addMineTab()
- }
- }
- extension CustomTabBarController {
-
- func setTabBarAppearence() {
-
- self.tabBar.backgroundColor = .white
- self.tabBar.shadowImage = UIImage.image(color: .hexStringColor(hexString: "#EEEEEE"), size: CGSize(width: QSLConst.qsl_kScreenW, height: 1))
- }
- }
- extension CustomTabBarController: UITabBarControllerDelegate {
-
- override func tabBar(_ tabBar: UITabBar, didSelect item: UITabBarItem) {
- switch item.tag {
- case 0:
- QSEventHandle.eventPush(eventName: QSLGravityConst.tab_friend)
- break
- case 1:
- QSEventHandle.eventPush(eventName: QSLGravityConst.tab_location)
- break
- case 2:
- QSEventHandle.eventPush(eventName: QSLGravityConst.tab_message)
- break
- case 3:
- QSEventHandle.eventPush(eventName: QSLGravityConst.tab_mine)
- break
- default:
- break
- }
- }
- }
- extension CustomTabBarController {
-
- /// 添加 好友 Tab
- func addFriendTab() {
-
- let imageInsets = UIEdgeInsets.zero
- let titlePostion = UIOffset(horizontal: 0, vertical: 0)
-
- let vc = QSLFriendController()
- self.addChildViewController(childVc: vc, title: "好友", image: "tab_friends_normal", selectedImage: "tab_friends_selected", imageInsets: imageInsets, titlePosition: titlePostion, index: 0)
- }
-
- /// 添加 主页定位 Tab
- func addHomeTab() {
-
- let imageInsets = UIEdgeInsets.zero
- let titlePostion = UIOffset(horizontal: 0, vertical: 0)
-
- let vc = QSLHomeController()
- self.addChildViewController(childVc: vc, title: "定位", image: "tab_location_normal", selectedImage: "tab_location_selected", imageInsets: imageInsets, titlePosition: titlePostion, index: 1)
- }
-
- /// 添加 消息 Tab
- func addCheckTab() {
-
- let imageInsets = UIEdgeInsets.zero
- let titlePostion = UIOffset(horizontal: 0, vertical: 0)
-
- let vc = QSLMessageController()
- self.addChildViewController(childVc: vc, title: "消息", image: "tab_message_normal", selectedImage: "tab_message_selected", imageInsets: imageInsets, titlePosition: titlePostion, index: 2)
- }
-
- /// 添加我的 Tab
- func addMineTab() {
-
- let imageInsets = UIEdgeInsets.zero
- let titlePostion = UIOffset(horizontal: 0, vertical: 0)
-
- let vc = QSLMineController()
- self.addChildViewController(childVc: vc, title: "我的", image: "tab_mine_normal", selectedImage: "tab_mine_selected", imageInsets: imageInsets, titlePosition: titlePostion, index: 3)
- }
- }
|