swift 中使用tabbar 来控制viewController跳转

  1. 在swift中通过 storyboard或者编程的方法 来实现一个 UITabBarController 进行各个UIViewController进行切换
    相关阅读:http://makeapppie.com/2014/09/09/swift-swift-using-tab-bar-controllers-in-swift/
  2. 前面那个方法是放在AppDelegate中实现的。而现实项目中可能有需要在某个界面上,点击一个按钮,弹开一个包含有UITabBar的视图,然后在各个ViewController之间进行切换
    主要思路是:
    • 建立一个继承UITabBarController类 ,并且实现委UITabBarDelegate
//
// ChartViewController.swift
// iLiveTraffic
//
// Created by 徐泽宇 on 15/8/14.
// Copyright (c) 2015年 徐泽宇. All rights reserved.
//

import UIKit

class ChartTabBarController: UITabBarController,UITabBarDelegate {


    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    override func tabBar(tabBar: UITabBar, didSelectItem item: UITabBarItem!) {
        NSLog("tabbar item 被点击")
        switch item.tag{
            case 0:
                //是退出按钮
                self.dismissViewControllerAnimated(true, completion: nil)
            case 1:
                NSLog("点击图表1")
            case 2:
                NSLog("点击图表2")
            case 3:
                NSLog("点击图表3")
            case 4:
                NSLog("点击图表4")
            default:
                NSLog("未知按钮")
        }
    }
}
  • 在storyboard中建立UITabBarController和各个UIViewController之间的关系
  • 在需要打开这个UITabBarController 地方弹开这个TabBarController
var chartTabBarController: ChartTabBarController! = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("chartTabBarController") as! ChartTabBarController
presentViewController(chartTabBarController, animated: true, completion: nil)

相关阅读:
http://blog.csdn.net/totogo2010/article/details/7700291

你可能感兴趣的:(swift,tabbar,viewcontroller,storyboard)