如何关闭UIAlertView
1个回答
2015-12-08 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
开发秘籍中有一个allSubView(),
取应用程序的windows,
static NSArray * allSubviews(UIView * viewSuper)
{
NSArray * arraySubviews = viewSuper.subviews;
for (UIView * subView in viewSuper.subviews)
{
NSArray * arraySub = allSubviews(subView);
if (arraySub != nil)
{
arraySubviews = [arraySubviews arrayByAddingObjectsFromArray:arraySub];
}
}
return arraySubviews;
}
//========
NSMutableArray * arrayAlertView = [NSMutableArray arrayWithCapacity:0];
for (UIWindow * windowSub in [[UIApplication sharedApplication] windows])
{
for (UIView * viewSub in allSubviews(windowSub))
{
if ([viewSub isKindOfClass:[UIAlertView class]])
{
[arrayAlertView addObject:(UIAlertView *)viewSub];
}
}
}
for (UIAlertView * alertView in arrayAlertView)
{
for (UIView * viewSub in alertView.subviews)
{
if ([viewSub isKindOfClass:[UITextField class]])
{
[(UITextField *)viewSub resignFirstResponder];
}
}
[alertView dismissWithClickedButtonIndex:0 animated:YES];
}
取应用程序的windows,
static NSArray * allSubviews(UIView * viewSuper)
{
NSArray * arraySubviews = viewSuper.subviews;
for (UIView * subView in viewSuper.subviews)
{
NSArray * arraySub = allSubviews(subView);
if (arraySub != nil)
{
arraySubviews = [arraySubviews arrayByAddingObjectsFromArray:arraySub];
}
}
return arraySubviews;
}
//========
NSMutableArray * arrayAlertView = [NSMutableArray arrayWithCapacity:0];
for (UIWindow * windowSub in [[UIApplication sharedApplication] windows])
{
for (UIView * viewSub in allSubviews(windowSub))
{
if ([viewSub isKindOfClass:[UIAlertView class]])
{
[arrayAlertView addObject:(UIAlertView *)viewSub];
}
}
}
for (UIAlertView * alertView in arrayAlertView)
{
for (UIView * viewSub in alertView.subviews)
{
if ([viewSub isKindOfClass:[UITextField class]])
{
[(UITextField *)viewSub resignFirstResponder];
}
}
[alertView dismissWithClickedButtonIndex:0 animated:YES];
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询