iOS Swift创建UITabBarController
Swift也是最近才开始弄,还不是很会
这个是实现代码,下面是代码,每一句都有注释,也为方便粘贴
import UIKit
class MyTabBarController: UITabBarController {
let homePage = HomePageVC()
let myPage = MyVC()
var arr = NSArray()
override func viewDidLoad() {
super.viewDidLoad()
// 调用方法
creatTabBarController()
}
//创建一个自定义方法,创建TabBarController
func creatTabBarController(){
//设置tabBarItem的title文字
homePage.tabBarItem.title = "首页";
myPage.tabBarItem.title = "我的";
//改变文字颜色,引文有很多时候我们不会用系统自带的文字颜色,想用自己的自定义颜色,第一个是默认颜色,第二个是选中颜色
UITabBarItem.appearance().setTitleTextAttributes(
[NSAttributedStringKey.foregroundColor: UIColor.gray], for:.normal)
UITabBarItem.appearance().setTitleTextAttributes(
[NSAttributedStringKey.foregroundColor: UIColor.orange], for:.selected)
//下面是设置为选中图片的选择?.withRenderingMode(UIImageRenderingMode.alwaysOriginal),这句话是去除图片的镂空色,引文在点击的时候会出现图片颜色 的变化,这个是设置未选中状态
homePage.tabBarItem.image = UIImage(named:"S首页")?.withRenderingMode(UIImageRenderingMode.alwaysOriginal)
myPage.tabBarItem.image = UIImage(named:"S我的")?.withRenderingMode(UIImageRenderingMode.alwaysOriginal)
//下面是设置为选中图片的选择?.withRenderingMode(UIImageRenderingMode.alwaysOriginal),这句话是去除图片的镂空色,引文在点击的时候会出现图片颜色 的变化,这个是设置选中状态
homePage.tabBarItem.selectedImage = UIImage(named:"shouye")?.withRenderingMode(UIImageRenderingMode.alwaysOriginal)
myPage.tabBarItem.selectedImage = UIImage(named:"wode")?.withRenderingMode(UIImageRenderingMode.alwaysOriginal)
//将两个页面放到数组中,因为self.viewControllers接收的是一个数组
arr = [homePage,myPage]
self.viewControllers = (arr as! [UIViewController])
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}