Swift UITabBarController 基本用法

//
//  MainTabBarVC.swift
//  TsOneS
//
//  Created by xubaoji on 16/3/7.
//  Copyright © 2016年 xubaoji. All rights reserved.
//

import UIKit

class MainTabBarVC: UITabBarController {

    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.
        createControllers()
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
    
    func createControllers()
    {
        createNavigationController(HomeViewController(),
            title: "首页",
            imageName: "icon_homepage_normal",
            selectedImageName: "icon_homepage_selected")
        
        createNavigationController(GoodsViewController(),
            title: "值得买",
            imageName: "icon_worthbuy_normal",
            selectedImageName: "icon_worthbuy_selected")
        
        createNavigationController(OtherViewController(),
            title: "值得去",
            imageName: "icon_worthgo_normal",
            selectedImageName: "icon_worthgo_selected")
        
        createNavigationController(ZhuantiViewController(),
            title: "值得看",
            imageName: "icon_worthlook_normal",
            selectedImageName: "icon_worthlook_selected")
        
        createNavigationController(UserViewController(),
            title: "我的",
            imageName: "icon_mine_normal",
            selectedImageName: "icon_mine_selected")
        
        let attributes = [NSForegroundColorAttributeName : APP_COLOR_PINK_1]
        UITabBarItem.appearance().setTitleTextAttributes(attributes, forState: .Selected)
    }
    
    func createNavigationController(vc:UIViewController ,
                                    title: String,
                                    imageName: String,
                                    selectedImageName: String)
    {
        let selectImg = UIImage(named: selectedImageName)?.imageWithRenderingMode(.AlwaysOriginal)
        
        vc.tabBarItem = UITabBarItem(title: title,
                                     image: UIImage(named: imageName),
                             selectedImage:selectImg)
        
       let nav = UINavigationController(rootViewController: vc)
        
        self.addChildViewController(nav)
    }
    
    /*最基本的写法
    
    func createControllersBasic(){
        let vc1 = HomeViewController()
        vc1.tabBarItem = UITabBarItem(title: "首页",
            image: UIImage(named: "icon_tabbar_homepage"),
            selectedImage: UIImage(named: "icon_tabbar_homepage_selected"))
        let nav1 = UINavigationController(rootViewController: vc1)
        
        let vc2 = HomeViewController()
        vc2.tabBarItem = UITabBarItem(title: "商家",
            image: UIImage(named: "icon_tabbar_merchant_normal"),
            selectedImage: UIImage(named: "icon_tabbar_merchant_selected"))
        let nav2 = UINavigationController(rootViewController: vc2)
        
        let vc3 = HomeViewController()
        vc3.tabBarItem = UITabBarItem(title: "我的",
            image: UIImage(named: "icon_tabbar_mine"),
            selectedImage: UIImage(named: "icon_tabbar_mine_selected"))
        let nav3 = UINavigationController(rootViewController: vc3)
        
        let vc4 = HomeViewController()
        vc4.tabBarItem = UITabBarItem(title: "更多",
            image: UIImage(named: "icon_tabbar_misc"),
            selectedImage: UIImage(named: "icon_tabbar_misc_selected"))
        let nav4 = UINavigationController(rootViewController: vc4)
        
        self.viewControllers = [nav1,nav2,nav3,nav4]
    }

    */
}

swift3.0


func createControllers()
    {
        createNavigationController(vc: HomeViewController(),
                                   title: "首页",
                                   imageName: "icon_homepage_normal",
                                   selectedImageName: "icon_homepage_selected")
        
        createNavigationController(vc: GoodsViewController(),
                                   title: "值得买",
                                   imageName: "icon_worthbuy_normal",
                                   selectedImageName: "icon_worthbuy_selected")
        
        createNavigationController(vc: OtherViewController(),
                                   title: "值得去",
                                   imageName: "icon_worthgo_normal",
                                   selectedImageName: "icon_worthgo_selected")
        
        createNavigationController(vc: ZhuantiViewController(),
                                   title: "值得看",
                                   imageName: "icon_worthlook_normal",
                                   selectedImageName: "icon_worthlook_selected")
        
        createNavigationController(vc: UserViewController(),
                                   title: "我的",
                                   imageName: "icon_mine_normal",
                                   selectedImageName: "icon_mine_selected")
        
        let attributes = [NSForegroundColorAttributeName : UIColor.black]
        UITabBarItem.appearance().setTitleTextAttributes(attributes, for: UIControlState.selected)
    }
    
    func createNavigationController(vc:UIViewController ,
                                    title: String,
                                    imageName: String,
                                    selectedImageName: String)
    {
        let selectImg = UIImage(named: selectedImageName)?.withRenderingMode(UIImageRenderingMode.alwaysOriginal)
        
        vc.tabBarItem = UITabBarItem(title: title,
                                     image: UIImage(named: imageName),
                                     selectedImage:selectImg)
        
        let nav = UINavigationController(rootViewController: vc)
        
        self.addChildViewController(nav)
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值