OStack程序员社区-中国程序员成长平台

标题: ios - 为每个选项卡创建一个带有 Storyboard 的选项卡栏 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 07:20
标题: ios - 为每个选项卡创建一个带有 Storyboard 的选项卡栏

我在 main.storyboard 中创建了一个标签栏 Controller 并对其进行了子类化。

我为每个标签创建了 Storyboard来组织我的工作,如下所示:

@interface SATabBarController ()

@end

@implementation SATabBarController

- (void)viewDidLoad {
    [super viewDidLoad];

    NSMutableArray *viewControllersArray = [[NSMutableArray alloc]initWithCapacity:5];
    [viewControllersArray addObject:[[UIStoryboard storyboardWithName"Tab1" bundle:nil] instantiateInitialViewController]];
    [viewControllersArray addObject:[[UIStoryboard storyboardWithName"Tab2" bundle:nil] instantiateInitialViewController]];
    [viewControllersArray addObject:[[UIStoryboard storyboardWithName"Tab3" bundle:nil] instantiateInitialViewController]];
    [viewControllersArray addObject:[[UIStoryboard storyboardWithName"Tab4" bundle:nil] instantiateInitialViewController]];
    [viewControllersArray addObject:[[UIStoryboard storyboardWithName"Tab5" bundle:nil] instantiateInitialViewController]];

    [self setViewControllers:viewControllersArray];

}


@end

现在我的问题是。这样做可以吗?使用这种方法可能会遇到什么问题吗?

我的 Storyboard越来越大,需要找到一种分离方法。



Best Answer-推荐答案


我可以立即看到这种方法有两个缺点:

  1. View 重用 - 这种方法使得跨不同选项卡重用通用 View Controller 变得更加困难,并且可能会导致您实现同一 View 的多个副本。
  2. bundle 大小 - 多个 Storyboard的存在可能会不必要地增加您的 bundle 大小。

希望这会有所帮助,

乔什。

关于ios - 为每个选项卡创建一个带有 Storyboard 的选项卡栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30315732/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4