我在 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-推荐答案 strong>
我可以立即看到这种方法有两个缺点:
- View 重用 - 这种方法使得跨不同选项卡重用通用 View Controller 变得更加困难,并且可能会导致您实现同一 View 的多个副本。
- bundle 大小 - 多个 Storyboard的存在可能会不必要地增加您的 bundle 大小。
希望这会有所帮助,
乔什。
关于ios - 为每个选项卡创建一个带有 Storyboard 的选项卡栏,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/30315732/
|