在所有UIViewControllers中保持其位置/大小/内容的iOs中创建操作栏(仅一次)的最佳方法是什么? 我可以动画UIViewController被推动没有动画吧?
我正在检查是否可以使用 UIToolBar 或 UINavigationController 来完成。我是在正确的轨道上吗?
提前致谢
答案 0 :(得分:1)
是的,这就是要走的路。还可以使用导航层次结构自动为您提供导航栏(操作栏)。在标签栏上,您必须创建不同的导航层次结构。
答案 1 :(得分:0)
我最终做了以下事情:
1 - 在故事板中创建了一个UIViewController,其中包含一个设计为操作栏的UIView,下面是容器
2 - 我嵌入此容器到另一个UIViewController,在这种情况下将是根视图控制器
3 - 在 prepareForSegue 上,我保存了在容器中加载的UIViewController实例
4 - 要在此UIViewController和第二个之间切换:
UIViewController *newController = ...
UIViewController *oldController = ...
[oldController willMoveToParentViewController:nil];
[self addChildViewController:newController];
[self transitionFromViewController:oldController
toViewController:newController
duration:0.1
options:UIViewAnimationOptionTransitionNone
animations:^(void) {
oldController.view.frame = CGRectMake(0 - width, 0, width, height);
newController.view.frame = CGRectMake(0, 0, width, height);
}
completion:^(BOOL finished){
[newController didMoveToParentViewController:self];
}
];