我想制作一个监听器,只要它向用户显示它就会抓取 UIAlertView。
我首先设置了这个观察者。
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(windowDidBecomeVisible:)
name:UIWindowDidBecomeVisibleNotification
object:nil];
然后获取 UIWindow 对象,如下所示。
- (void)windowDidBecomeVisible:(NSNotification *)notification
{
UIWindow *window = [notification object];
}
但是从这个窗口对象中,我无法获得 UIAlertView。
此窗口下只有一个 subview ,并且该 subview 没有任何 subview 。
下面的链接显示了从窗口对象获取 UIAlertView 对象的代码,但这不起作用。
https://stackoverflow.com/a/2529692/1709287
也许 iOS7 做了一些技巧来包装和隐藏 UIAlertView。
有谁知道如何追踪 UIWindow 对象的 subview (或成员)以到达当前显示在屏幕上的 UIAlertView 对象?
最佳答案
人们在 iOS 6 中通常会做这种事情。
Apple 故意在 iOS 7 上让它变得不可能。你不能再这样做了。唯一的选择是私有(private) API,使用这些 API 会导致您的应用被商店拒绝。
如果您需要这种级别的控制,您必须停止使用 UIAlertView。
关于ios - 如何从 iOS7 中的 UIWindow 对象中获取 UIAlertView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23038741/