Xcode9学习笔记16 - 选项卡视图控制器UITabBarController

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 16:50   1254   0

    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.
        self.title = "Item #1"//设置当前视图控制器(FirstSubViewController.swift)在选项卡视图控制器中的标题
        self.tabBarItem.image = UIImage(named: "tab1")//设置当前视图控制器的选项卡图标
        self.view.backgroundColor = UIColor.brown//设置当前视图控制器的背景色
    }



    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.
        self.title = "Item #2"//设置当前视图控制器(FirstSubViewController.swift)在选项卡视图控制器中的标题
        self.tabBarItem.image = UIImage(named: "tab2")//设置当前视图控制器的选项卡图标
        self.view.backgroundColor = UIColor.purple//设置当前视图控制器的背景色
    }



    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.
        
        let viewController1 = FirstSubViewController()//实例化第一个视图控制器对象
        let viewController2 = SecondSubViewController()//实例化第二个视图控制器对象
        
        let tabViewController = UITabBarController()//初始化一个选项卡控制器对象
        tabViewController.viewControllers = [viewController1, viewController2]//将两个视图控制器,以数组的方法,指定给选项卡控制器对象
        tabViewController.view.backgroundColor = UIColor.white//设置选项卡控制器对象根视图的背景色为白色
        self.window?.rootViewController = tabViewController//将选项卡控制器对象,作为当前窗口的根视图控制器
        
        return true
    }


但是运行时图标没正确显示:


原因还没找到,一开始以为因为不是png的原因,换成png也无法显示:

后续找到原因再更新。

如果你知道的话,欢迎指点一下。


昨天图标无法显示的解决方法:

在设置图标后面增加?.withRenderingMode(.alwaysOriginal),例如:

self.tabBarItem.image = UIImage(named: "tab2")?.withRenderingMode(.alwaysOriginal)

这样运行效果如下:


仍然有个问题,刚运行时,右边的图标不显示,需要点击右边图标的位置后才显示:



后续解决的话再更新


昨天遇到右边图片不显示的问题可以用以下方法解决:


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP