Latest 0.0.1
Homepage https://github.com/mrkizy/XZTabBarCtrl
License MIT
Platforms ios 8.0
Authors

这是带有顶部toolBar的控制器,支持圆形小红点、数字小红点、多种图文样式,与APPLE官方控件-UITabBarViewController一样的代理设计模式,简单易用。

作者:kizy

QQ:358033194

案例
使用教程

案例

<img src = "example1.png" style = "width: 200px; height: 300px;">
<img src = "example2.png" >
<img src = "example3.png" >

How to use XZTabBarCtrl(如何使用XZTabBarCtrl)

  • Manual import:(手动引用)
    • Drag All files in the XZTabBarCtrlfolder to project
      (将XZTabBarCtrl文件夹及子文件拉到你的项目中)
    • Import the main file:#import "XZTabBar.h"
      (引用头文件XZTabBar.h)

initialize:the same to UITabBarViewController(初始化:和UITabBarViewController)

UIViewController *ctrl1 = [[UIViewController alloc] init];
UIViewController *ctrl2 = [[OneViewCtrl alloc] init];
UIViewController *ctrl3 = [[RedViewCtrl alloc] init];

XZTabBarCtrl *tabBarCtrl = [[XZTabBarCtrl alloc] init];

//将子控制器加入childVCs,用法类似UITabBarViewController的viewControllers
tabBarCtrl.childVCs = @[ctrl1, ctrl2, ctrl3];

//为顶部ToolBar添加需要显示的标题

tabBarCtrl.toolBarTitles = @[@"第一个Item", @"第二个Item", @"第三个Item"]; //设置代理 tabBarCtrl.delegate = self; //为顶部ToolBar设置显示样式,更多样式设置请看属性 tabBarCtrl.itemType = ToolBarItemType_leftToRight;  //ToolBarItemType_default(默认样式)、ToolBarItemType_leftToRight(图文左右排列)、ToolBarItemType_topToBottom(图文上下排列) tabBarCtrl.toolBarImages = @[@"job_push_icon_blue", @"job_push_icon_blue", @"job_push_icon_blue"];//设置图片数组 tabBarCtrl.xzToolBarColor = [UIColor whiteColor]; //设置背景色

子控制器获取对应toolBarItem

  • Import the main file:#import "XZTabBar.h" in childViewController
    (子控制器中引用头文件XZTabBar.h)
  • 显示小红点:self.toolBarItem.budgeView.hidden = NO;
  • 显示6个未读数字:self.toolBarItem.bageVal = @"6";

properties of XZTabBarCtrl:(属性)

@interface XZTabBarCtrl : UIViewController

//  代理code>
@property (nonatomic, weak) id delegate;

//  @decription toolBarItem's title: 存放自定义tooleBar的标题数组
//  @warning    该属性可为空,为空表示不创建tooleBar
@property (nonatomic, copy) NSArray *toolBarTitles;

//  @decription toolBarItem's image: 存放自定义tooleBar的图片数组
//  @warning    该属性可为空,如需赋值,count大小需与toolBarTitles一致
@property (nonatomic, copy) NSArray *toolBarImages;

//  @decription toolBar's height: 设置toolBar的高度,默认高度为49.0f
@property (nonatomic, assign) CGFloat toolBarHeight;

//  @decription 自定义的toolBar
//  @warning    toolBar整个机制类似UITabBarController的tabBar:一个XZTabBarCtrl只有一个customeToolBar;每个子控制器拥有独立的ToolBarItem,可支持小红点、标题更改 etc, 子控制器获取该tooleBarItem需要引用文件"XZTabBar.h"
@property (nonatomic, weak) UIView *customToolBar;

//  @decription toolBarItem显示样式
//  ToolBarItemType_default,    //默认显示系统正常排列按钮
//  ToolBarItemType_normalImgText,    //左右图文按钮
//  ToolBarItemType_unnormalImgText,    //上下图文按钮
@property (nonatomic, assign) ToolBarItemType itemType;

//  @decription  控制toolBar的背景颜色,default is blackColor
@property (nonatomic, strong) UIColor *xzToolBarColor;

//  @decription  控制toolItem的文字正常显示颜色,default is grayColor
@property (nonatomic, strong) UIColor *xzTitleColor;

//  @decription  控制被选中toolItem的文字显示颜色,default is whiteColor
@property (nonatomic, strong) UIColor *xzTitleSelectedColor;

//  @decription 存放子控制器的数组
//  @warning    该属性不能为空,必须赋值
@property (nonatomic, copy) NSMutableArray<__kindof uiviewcontroller> *childVCs;

//  @decription  当前显示的控制器的Index
//  @warning    该属性用法类似UITabBarController的selectedIndex属性
@property (nonatomic, assign) NSInteger selectedIndex;

delegate:(代理)

@protocol XZTabBarCtrlDelegate

//点击时调用,返回即将显示控制器对应toolBarItem

  • (void)xzTabBarCtrl:(XZTabBarCtrl )tabbarCtrl selectedItem:(ToolBarItem )toolBarItem;

//点击前调用,控制是否跳转

  • (BOOL)xzTabBarCtrl:(XZTabBarCtrl )tabbarCtrl shouldSelectViewController:(UIViewController )viewController;

//点击时调用,返回即将显示控制器

  • (void)xzTabBarCtrl:(XZTabBarCtrl )tabbarCtrl didSelectViewController:(UIViewController )viewController;
    @end

Latest podspec

{
    "name": "XZTabBarCtrl",
    "version": "0.0.1",
    "summary": "u8fd9u662fu5e26u6709u9876u90e8toolBaru7684u63a7u5236u5668uff0cu652fu6301u5706u5f62u5c0fu7ea2u70b9u3001u6570u5b57u5c0fu7ea2u70b9u3001u591au79cdu56feu6587u6837u5f0fuff0cu4e0eAPPLEu5b98u65b9u63a7u4ef6-UITabBarViewControlleru4e00u6837u7684u4ee3u7406u8bbeu8ba1u6a21u5f0fuff0cu7b80u5355u6613u7528u3002",
    "description": "u8fd9u662fu5e26u6709u9876u90e8toolBaru7684u63a7u5236u5668uff0cu652fu6301u5706u5f62u5c0fu7ea2u70b9u3001u6570u5b57u5c0fu7ea2u70b9u3001u591au79cdu56feu6587u6837u5f0fuff0cu4e0eAPPLEu5b98u65b9u63a7u4ef6",
    "homepage": "https://github.com/mrkizy/XZTabBarCtrl",
    "license": "MIT",
    "authors": {
        "kizy": "[email protected]"
    },
    "platforms": {
        "ios": "8.0"
    },
    "source": {
        "git": "https://github.com/mrkizy/XZTabBarCtrl.git",
        "tag": "0.0.1"
    },
    "source_files": "XZTabBarCtrl/*.{h,m}"
}

Pin It on Pinterest

Share This