SMTabbedSplitViewController 1.0.3

SMTabbedSplitViewController 1.0.3

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布时间最新版本2014年12月

Sergey Marchukov 维护。




  • 作者
  • Sergey Marchukov

iPad 分页分视图控制器是一个自定义的分视图控制器,具有用于在主视图控制器之间导航的垂直左侧标签栏控制。标签栏包含用于在视图控制器之间导航的标签和用于某些操作(例如,退出应用程序)的动作按钮。它也可以不带标签栏控制作为可定制的替代 UISplitViewController 使用。

Screenshot

主要特性

  • 灵活的显示设置机会(您可以更改标签栏、主和详细视图控制器的大小、样式等)。
  • 用于在主视图控制器之间导航的垂直左侧标签栏。
  • 标签栏包含标签和动作按钮。
  • 可以不带标签栏使用,类似于 UISplitViewController。

版本历史

  • 1.0.3 - iOS 8 及其他一些修复
  • 1.0.2 - 转换为 ARC
  • 1.0.1 - 示例应用重设计
  • 1.0 - 初始版本

要求

  • 针对 iOS 6+ 制作。
  • ARC(1.0.2+)和 ARC 以下(1.0.1)

安装

SMTabbedSplitViewController 可以通过 CocoaPods 安装。只需将其添加到您的 Podfile。

pod 'SMTabbedSplitViewController', '>= 1.0.3’

如果您不使用 Cocoapods,请下载并将 SMTabbedSplitViewController 文件夹导入到您的项目中。

然后,从 SMTabbedSplitViewController 派生并重写 -init

#import "SMTabbedSplitViewController.h"
//or #import <SMTabbedSplitViewController.h> for CocoaPods
@interface ViewController : SMTabbedSplitViewController

或创建 SMTabbedSplitViewController 实例

SMTabbedSplitViewController *split = [[SMTabbedSplitViewController alloc] initTabbedSplit];

使用构造函数 -initTabbedSplit 创建包含标签栏的分割视图,使用 -initSplit 创建不带标签栏的分割视图(默认 -init 方法称为 -initTabbedSplit)

为了创建标签栏标签,您必须为此标签创建视图控制器的实例,并在创建对象 SMTabBarItem 时使用它(您也可以自定义此标签项)

SMTestMasterViewController *tab1VC = [[SMTestMasterViewController alloc] init];
tab1VC.view.backgroundColor = [UIColor colorWithRed:0/255.0 green:127/255.0 blue:237/255.0 alpha:1.0];
SMTabBarItem *tab1 = [[SMTabBarItem alloc] initWithVC:tab1VC image:[UIImage imageNamed:@"Twitter"] andTitle:@"Twitter"];
tab1.selectedImage = [UIImage imageNamed:@"Twitter_sel"];

并设置 tabsViewControllers 属性

split.tabsViewControllers = @[tab1, tab2, tab3, tab4, tab5, tab6];

为了创建动作按钮,您必须使用另一个接受动作块而不是视图控制器(如创建标签)的构造函数创建 SMTabBarItem

SMTabBarItem *action = [[SMTabBarItem alloc] initWithActionBlock:^{  
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"About" message:@"SMTabbedSplitViewController by Marchukov Sergey" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
} image:[UIImage imageNamed:@"info"] andTitle:@"About"];

并设置 tabsActions 属性

split.actionsButtons = @[action, action2];

为了创建不带标签栏的分分割视图控制器,您必须在 viewControllers 属性中设置主和详细视图控制器(不带 SMTabBarItem),就像 UISplitViewController 一样

split.viewControllers = @[masterVC, detailVC];

联系方式

如果您对该项目的评论或建议,您可以始终通过以下方式联系我

  • 电子邮件:我的 GitHub 个人资料或 Git 日志中的地址。
  • 在 GitHub 上留下错误/问题。

请报告错误/问题以帮助改进此代码。谢谢!

许可证

本项目采用 MIT 许可证发布。

MIT 许可证(MIT)

版权所有 2014 Sergey Marchukov

在此特此授予任何人,无需任何费用,获取此软件及其相关文档文件的副本(以下简称“软件”)的权利,以不受限制地处理软件,包括但不限于使用、复制、修改、合并、发布、分发、许可和/或出售软件副本的权利,并允许向软件提供的人以同样的方式操作,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或重大部分中。

本软件按“现状”提供,不提供任何形式的保证,无论是明示的还是隐含的,包括但不限于适销性、适用于特定目的和不存在侵权性。在任何情况下,作者或版权所有者都不会对因以下情况而产生的任何索赔、损害或其他责任负责:合同行为、侵权或其他行为,源于、因 或与软件或使用或处理软件有关。