本文主要是介绍IOS 17 基于UITabBarController实现首页TabBar,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
实现方式
创建首页MainController继承自UITabBarController就可以实现Tabbar效果。
实现效果
创建几个子控制器
创建子控制器 DiscoveryController,VideoController,MeController,FeedController,RoomController,继承自BaseLogicController;BaseLogicController封装 查看文章 IOS 11 通用Base控制器封装
//
// DiscoveryController.swift
// MyCloudMusic
//
// Created by jin on 2024/8/27.
//import UIKitclass DiscoveryController: BaseLogicController {}
其余自控制器实现同DiscoveryController。
创建MainController
MainController继承自UITabBarController
//
// MainController.swift
// 主界面
//
// Created by jin on 2024/8/20.
//import UIKitclass MainController: UITabBarController {override func viewDidLoad() {super.viewDidLoad()//选中高亮颜色tabBar.tintColor = .primaryColortabBar.isTranslucent = true//添加子控制器addChildController(DiscoveryController(), R.string.localizable.discovery(), "Discovery")addChildController(VideoController(), R.string.localizable.video(), "Video")addChildController(MeController(), R.string.localizable.me(), "Me")addChildController(FeedController(), R.string.localizable.feed(), "Feed")addChildController(RoomController(), R.string.localizable.live(), "Live")}/// 添加子控制器func addChildController(_ target:UIViewController,_ title:String,_ imageName:String) {//标题target.tabBarItem.title = title//默认图片target.tabBarItem.image = UIImage(named: imageName)//选择后图片target.tabBarItem.selectedImage = UIImage(named: "\(imageName)Selected")//选择后文本颜色target.tabBarItem.setBadgeTextAttributes([.foregroundColor:UIColor.colorPrimary], for: .selected)addChild(target)}
}
编译能够正常显示首页Tabbar效果。
这篇关于IOS 17 基于UITabBarController实现首页TabBar的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!