当按下ToolBar按钮时,将子ViewControllers添加到UIViewController
我正在用ScrollView实现UIViewController。在视图的中心,我有一个像这样的工具栏:当按下ToolBar按钮时,将子ViewControllers添加到UIViewController
我有四个UIViewControllers要添加,每个按钮的工具栏一个。我不知道是否应该在开始时全部关闭它们,然后用NSArray的viewControllers和一个布尔值的NSArray用这种方法管理它们:
我怎么能管理这个?当按下任何按钮
- (void) displayContentController: (UIViewController*) content;
{
scrollView.contentSize =CGSizeMake(scrollView.frame.size.width, self.view.frame.size.height + content.view.frame.size.height);
[self addChildViewController:content];
content.view.frame = [self frameForContentController];
[scrollView addSubview:content.view];
[content didMoveToParentViewController:self];
}
- (void) hideContentController: (UIViewController*) content
{
[content willMoveToParentViewController:nil]; // 1
[content.view removeFromSuperview]; // 2
[content removeFromParentViewController]; // 3
}
在工具栏的底部变更viewControllers我从来没有使用childViewControllers其实,我真的不知道如何使用它们
你想基本上是创建您自己的TabBarcontroller。您应该使用子视图控制器,否则自动旋转将无法按预期工作。您应该使用ViewControllers数组(需要传递数据)并在与TabBar进行交互时进行委托。这是一个很好的例子。 MHTabBarController。
这里是它的一个样品接口:
@interface MHTabBarController : UIViewController @property (nonatomic, copy) NSArray *viewControllers; @property (nonatomic, weak) UIViewController *selectedViewController; @property (nonatomic, assign) NSUInteger selectedIndex; @property (nonatomic, weak) id delegate; - (void)setSelectedIndex:(NSUInteger)index animated:(BOOL)animated; - (void)setSelectedViewController:(UIViewController *)viewController animated:(BOOL)animated; @end
但实际上,我已经有一个TabBar在底部,但我也需要在屏幕中间的工具栏来更改下面的视图控制器 – croigsalvador
我们不要在这里谈论工具栏(我不知道;)),它可能会有不同的表现。 –
@RoxeeMan无所谓。每个UIViewController容器都是一个UIViewController。 –
而你的问题是什么? –
我怎么能管理?在任何按钮被按下时,更改工具栏底部的viewControllers? – croigsalvador
我认为这没有普遍的答案。您可以在工具栏操作上创建新的视图控制器。你也可以在任何时候创建它们(并且存储在数组中),或者在getter中创建它们。我不知道你到底需要什么。 –