swift-自定义TabBar工具栏

class EBTAppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?

    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

        self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
        self.window!.backgroundColor = UIColor.whiteColor()

        /**首页*/
        let storyBoard = UIStoryboard(name: "Main", bundle: nil)
        let firstCtl = storyBoard.instantiateViewControllerWithIdentifier("EBTFirstViewController") as! EBTFirstViewController
        let firstNav = UINavigationController(rootViewController: firstCtl)

        /**投资*/
        let secondCtl = storyBoard.instantiateViewControllerWithIdentifier("EBTSecondViewController") as! EBTSecondViewController
        let secondNav = UINavigationController(rootViewController: secondCtl)

        /**活动*/
        let thirdCtl = storyBoard.instantiateViewControllerWithIdentifier("EBTThirdViewController") as! EBTThirdViewController
        let thirdNav = UINavigationController(rootViewController: thirdCtl)

        /**财富*/
        let fourCtl = storyBoard.instantiateViewControllerWithIdentifier("EBTFourViewController") as! EBTFourViewController
        let fourNav = UINavigationController(rootViewController: fourCtl)
        let navArray = [firstNav,secondNav,thirdNav,fourNav]
        let tabBarController = UITabBarController()
        tabBarController.viewControllers = navArray
        tabBarController.selectedIndex = 0

        let selectImageArray = ["tab_button_0_tap","tab_button_1_tap","tab_button_2_tap","tab_button_3_tap"]
        let normalImageArray = ["tab_button_0","tab_button_1","tab_button_2","tab_button_3"]
        let titleArray = ["首页","投资","活动","财富"]
        var count:Int = 0

        for var i = 0;i < navArray.count;i++
        {
         var tabBarItem = navArray[i].tabBarItem
        /**屏蔽系统的背景颜色,声明这张图片用原图(别渲染)*/
            var normalImage = UIImage(named: normalImageArray[i])
            normalImage = normalImage?.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal)

         var selectImage = UIImage(named: selectImageArray[i])
             selectImage = selectImage?.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal)

            tabBarItem.title = titleArray[i]
            tabBarItem.selectedImage = selectImage
            tabBarItem.image = normalImage
            tabBarItem .setTitleTextAttributes([NSForegroundColorAttributeName:UIColor(red: 207.0/255.0, green: 44.0/255.0, blue: 65.0/255.0, alpha: 1.0),NSFontAttributeName:UIFont.boldSystemFontOfSize(12)], forState: UIControlState.Selected)

        }
        //MARK: 设置导航栏背景颜色
        let topColor = UIColor.redColor()
        let topImage = UIImage.imageWithColor(topColor)

        let navBar = UINavigationBar.appearance()
        navBar.setBackgroundImage(topImage, forBarMetrics: UIBarMetrics.Default)
        self.window!.rootViewController = tabBarController
        self.window!.makeKeyAndVisible()
        return true
    }

demo下载地址:https://github.com/KBvsMJ/EBTSwiftCustomTabBar

时间: 2024-08-07 23:00:29

swift-自定义TabBar工具栏的相关文章

swift自定义tabBar

class TabBarViewController: UITabBarController{    var tabBarBgImg : UIImageView?    var tabBarBgImgSelected : UIImageView?    var selectedButton : UIButton? // 标记选中的按钮        override func viewDidLoad()    {        super.viewDidLoad()        self.vi

仿制新浪微博iOS客户端之三-自定义TabBar

继续上一篇文章的进度,我们实际完成了微博基本框架的搭建,具体实现的效果如下左图,但我们实际需要实现的效果为右图,除去主要的页面内容不谈,仅仅下面的TabBar距离我们的需求就有相当的差距.因此本文着重于实现需要的效果.                           再简要汇总一下我们的需求: 1.我们要在TabBar原有四个按钮的基础上,再增加一个按钮,作为撰写微博的入口: 2.新加入的按钮必须和原有按钮一起,均匀分布在TabBar上: 3.新加入的按钮只有图片,没有文字. 需求汇总如上,

两种方式自定义标签工具栏

在AppDelegate.m中设置根视图控制器 MainTabbarController.h @interface MainTabbarController : UITabBarController { UIImageView *_selectedImg; UIView *_tabbarView; } - (void)showtabbar:(BOOL)show; MainTabbarController.m #import "MainTabbarController.h" #impor

swift 自定义TabBarItem

1.效果图     2.NewsViewController.swift // // NewsViewController.swift // NavigationDemo // // Created by 赵超 on 14-6-27. // Copyright (c) 2014年 赵超. All rights reserved. // import UIKit class NewsViewController: UIViewController { override func viewDidLo

IOS开发之三级控制器的使用与自定义标签工具栏

三级控制器的概念:UITabBarController- ->(管理) UINavigationController -->(管理) UIViewController 下面笔者就分享一下三级控制器的使用 #import "MainTabbarController.h" #import "ProfileViewController.h" #import "GroupViewController.h" #import "Sear

IOS开发-关于自定义TabBar条

今天在做项目的时候,突然有一个模块需要自定义TabBar条. 在平常很多做项目的时候,都没有去自定义过,大部分都是使用系统自带的.今天整理一个自定义TabBar条的步骤. 首先看下我们最终实现的效果: 首先需要继承UItabBar自定义一个自己的tabBar .h #import <UIKit/UIKit.h> @class THTabBar; @protocol THTabBarDelegate <UITabBarDelegate> @optional - (void)tabBa

自定义TabBar

UITabBarController是在IOS应用开发中很常用的一个类,继承于UIViewController,来实现多个视图间的切换,但很多时候系统自带的TabBar不能满足我们的需求,系统自带的一些属性我们往往无法修改,像切换项的图片的大小,这时候就需要我们自定义TabBar.例如,我们想实现下方的TabBar的这个效果,使用系统的就无法完成. 演示所需图片下载地址http://download.csdn.net/detail/zsmile123/8136531 --------------

[IOS]swift自定义uicollectionviewcell

刚刚接触swift以及ios,不是很理解有的逻辑,导致某些问题.这里分享一下swift自定义uicollectionviewcell 首先我的viewcontroller不是直接继承uicollectionviewcontroller,而是添加的uicollectionview到我的storyboard, 然后再新建一个swift的文件,让这个swift继承uicollectionviewcell import Foundation class SVGCell :UICollectionView

iOS开发之功能模块--关于自定义TabBar条

只上项目中用到的代码: 1.实现重写TabBar的TabBarItem,然后在中间额外加一个按钮. 1 #import <UIKit/UIKit.h> 2 3 @interface BikeTabBar : UITabBar 4 5 @end 1 #import "BikeTabBar.h" 2 3 @interface BikeTabBar () 4 5 //@property (nonatomic,weak)UIButton *centerButton; 6 7 @en

自定义tabbar(storyBoard)

开发中系统提供的tabbar很难满足我们的项目需求,因此我们需要自定义.下面提供了一种简单自定义tabbar. 1.storyBoard中拖拽几个页面 file:///Users/dingyunfei/Desktop/屏幕快照%202015-11-30%20下午10.45.08.png 2.创建CustomViewController类代码如下 // //  CustomViewController.h //  SB框架搭建 // //  Created by 丁云飞 on 15/11/26.