我提出了一个模态视图控制器,它是一个标签栏控制器,里面有一个导航控制器。
问题是我的第一个视图有黑色背景,我希望新视图有白色背景。
这意味着我要么必须拥有具有透明背景的模态视图控制器(直到其显示白色背景时完成“向上滑动”动画),要么我必须将导航控制器背景设置为白色以使其非-透明的。
这导致我在导航栏(网络状态/电池状态/时间栏所在的位置)上方有一条额外的白色条带。我无法摆脱这个。 :(
因此,如果我可以翻转视图,或者淡入视图,或者从右侧或左侧滑动视图,或者其他在美学上会更好的东西。
有什么办法可以做到这一点吗?或者我只需将“动画:”设置为“否”?
Thanks
我不明白你对不同颜色背景的困境是怎么回事。视图上的不透明背景,尤其是动画背景,可以使应用程序运行得更快。现在关于转换,在调用presentModalViewController之前,插入以下行之一:
modelViewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
modelViewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
modelViewController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
modelViewController.modalTransitionStyle = UIModalTransitionStylePartialCurl;
上述任何一项都会改变过渡样式(尽管 PartialCurl 会导致最后一个视图的白色部分仍然存在于顶角;它似乎没有记录,尽管地图应用程序使用了它)。您可能需要尝试 modalTransitionStyle 的设置。
从左或右滑入是导航控制器的一部分。使用导航控制器时,更改背景可能不是您想要的。
另外,无论您以哪种方式过渡,模型视图上方的额外条带都会显示出来。这很烦人,但可以通过以下方式解决:
- (void)viewDidLoad {
[super viewDidLoad];
navigationController.view.frame = CGRectMake(0, 0, 320, 460); //<--This line
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)