[英]alert view is not visible when adding a view as a subview of the application top window
我遇到将商店视图添加为顶部窗口的子视图的情况。 这是通过以下代码完成的:
NSArray* windows = [[UIApplication sharedApplication] windows];
int count = [windows count];
UIWindow* topWindow = [windows objectAtIndex:count - 1];
[topWindow addSubview:_storeView];
当我购买产品时,在某些情况下(不确定确切的时间和原因),应用内购买警报在用户需要输入其应用ID凭据并批准交易的情况下显示在我的视图中,用户。 只有当我放弃我的观点时,我才能看到它们并完成购买流程。
我如何确保这些警报将出现在所有其他视图的顶部。 以及为什么它不一致,在某些情况下它对用户可见,而在某些情况下却不可见…
感谢任何帮助。
为什么将视图直接添加到窗口? 我建议您阅读Apple文档UIViewController编程指南。
问题可能是这行代码:
NSArray* windows = [[UIApplication sharedApplication] windows];
int count = [windows count];
UIWindow* topWindow = [windows objectAtIndex:count - 1];
[topWindow addSubview:_storeView];
您的应用程序的根控制器是什么? 您在使用容器控制器( UINavigationController
, UITabBarController
,...)。 您可以显示您的AppDelegate代码吗?
找到了解决方案。
而不是使用当前窗口,而是创建一个浮动在其他UI元素(例如系统键盘)上方的新窗口。 我将其窗口级别属性设置为UIWindowLevelStatusBar以显示在状态栏上方但在uialertviews下方
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.