Ios 将UIView设置为高于所有其他视图的动画
我想在我的应用程序的整个内容上方显示/设置UIView动画。以下方法可行,但将所有内容都附加到窗口不是一个好主意Ios 将UIView设置为高于所有其他视图的动画,ios,animation,uiview,Ios,Animation,Uiview,我想在我的应用程序的整个内容上方显示/设置UIView动画。以下方法可行,但将所有内容都附加到窗口不是一个好主意 [[[[UIApplication sharedApplication] delegate] window] addSubview:view] 什么是好的替代方案?我认为这种方法是正确的,您确实需要将其附加到窗口,因为您可能不知道视图层次结构是什么 要稍微整理一下代码,您可以将该逻辑封装到一些方法中,这些方法可以通过AppDelegate或其他方式访问: - (void)addAl
[[[[UIApplication sharedApplication] delegate] window] addSubview:view]
什么是好的替代方案?我认为这种方法是正确的,您确实需要将其附加到窗口,因为您可能不知道视图层次结构是什么 要稍微整理一下代码,您可以将该逻辑封装到一些方法中,这些方法可以通过
AppDelegate
或其他方式访问:
- (void)addAlwaysVisibleView:(UIView *)topmostView;
- (void)removeAlwaysVisibleView;
然后,
AppDelegate
可以保持状态,并知道是否已经附加了“始终可见”视图,以保持秩序,并在需要时进行一些室内清洁。我认为您可以尝试visibleViewController方法来获取顶部viewController
//Try this to get the top viewController
UIViewController *vc = [app.rootViewController visibleViewController];
// After getting the top viewController, and then add your subview to it
[vc addSubView:view];
// and try bringing this view to the top
[vc bringSubViewTo....(fogot~):view];
看看是否有帮助:)创建单例UIView并将该实例置于每个viewController上可能是一个选项?