基本信息
源码名称:swift-tabbar封装
源码大小:0.76M
文件格式:.zip
开发语言:Swift
更新时间:2018-11-12
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 1 元 
   源码介绍
swift版本更新较快,较大,使用时可能会发生错误,简单修改即可


import UIKit


let kTabBarTitle            = "tabTitle"

let kTabBarClassName        = "className"

let kTabBarDefaultImage     = "defaultImage"

let kTabBarSelectedImage    = "selectedImage"

let kTabBarIsSelected       = "isSelected"


struct HBTabBarItemProperty {

    //tab的Title

    var tabTitle: String?

    //tab上对应VC控制器的类名

    var className: String?

    //tab的默认图片

    var defaultImage: String?

    //tab的选中图片

    var selectedImage: String?

    //tab的是否被选中

    var isSelected: Bool?

    

    init(controllersInfo dic : Dictionary<String, Any>) {

        tabTitle        = dic[kTabBarTitle] as? String

        className       = dic[kTabBarClassName] as? String

        defaultImage    = dic[kTabBarDefaultImage] as? String

        selectedImage   = dic[kTabBarSelectedImage] as? String

        isSelected      = dic[kTabBarIsSelected] as? Bool

    }

}


class HBTabBarVCManage: NSObject {


    func configTabBarController() -> HBTabBarController {

        

        let path: String = Bundle.main.path(forResource: "HBTabBarConfig", ofType: "plist")!

        let allTabs = NSArray.init(contentsOfFile: path)

        let tabsPropertyArr: NSArray = NSArray()

        var selectedIndex: NSInteger = 0

        for index in 0..<(allTabs?.count)! {

            let tabBeanDic: NSDictionary = allTabs![index] as! NSDictionary

            let property = HBTabBarItemProperty.init(controllersInfo: tabBeanDic as! Dictionary<String, Any>)

            tabsPropertyArr.adding(property)

            if property.isSelected! {

                selectedIndex = index

            }

        }

        let tabBarVC = HBTabBarController.init(tabBarItems: tabsPropertyArr as! Array<Any> as! Array<HBTabBarItemProperty>)

        tabBarVC.selectedIndex = selectedIndex;

        return tabBarVC;

    }

    

}