我需要在导航栏下方显示一个类似状态栏的薄视图,该视图会滑入视图并在几秒钟内保持可见状态,然后在发生某些操作时滑回视线之外。
对于任何给定的视图控制器,我可以通过在需要显示/消失时适当地设置动画帧来轻松完成此操作。
但是我有一些不同的视图控制器,我不想复制相同的代码来管理每个控制器中条形的外观。除了重复代码之外,我怀疑在控制器之间导航时会有闪烁,如果在更换控制器时条形图当前是可见的。
有什么方法可以解决这个问题?
答案 0 :(得分:1)
在appDelegate中创建一个方法,将自定义视图添加到主窗口。 这样,只要您触发显示自定义视图方法,它就会位于视图层次结构的顶部。
需要注意的一点是,如果您的应用更改了方向,则必须手动更改自定义视图。
答案 1 :(得分:0)
只需在层次结构中向上移动UIView
即可。例如,将它放在UINavigationController
的{{1}}中,这样它就会显示在UINavigationController的视图上方。
您可能需要将其置于最前面,并可能使用convertRect:toView:或类似内容转换此“状态栏”superview
的框架。