iOS高手进:如何在appdelegate里获取到当前屏幕所显示的UIAlert对象?
1个回答
展开全部
在什么地方弹出的alertView? 你有此一问,应该不是在appDelegate中吧。如果是那样的话,只能是递归遍历来找了
UIAlertView *myAlert;
-(void)findAlertView:(UIView *view) {
NSArray *subViews = [view subViews];
for (UIView *sView in subViews) {
if ([sView isKindOfClass:[UIAlertView class]]) {
myAlert =(UIAlertView *)sView;
break;
}else {
[self findAlertView:sView];
}
}
}
在AppDelegate 中调用
[self findAlertView:self.window];
UIAlertView *myAlert;
-(void)findAlertView:(UIView *view) {
NSArray *subViews = [view subViews];
for (UIView *sView in subViews) {
if ([sView isKindOfClass:[UIAlertView class]]) {
myAlert =(UIAlertView *)sView;
break;
}else {
[self findAlertView:sView];
}
}
}
在AppDelegate 中调用
[self findAlertView:self.window];
追问
我试一下。
不好用
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询