在循环中删除所有带有其他实例视图的 viewController
Posted
技术标签:
【中文标题】在循环中删除所有带有其他实例视图的 viewController【英文标题】:Removing all viewController with other views of instance in a loop 【发布时间】:2012-10-03 05:17:05 【问题描述】:我有一个显示webViews
的选项卡和一个显示viewController
元素的选项卡。
当我按下后退按钮时,我删除了所有 viewController
+other views
和 tags
我这样创建它们:
imageGame *appDelegate = (imageGame *)[UIApplication sharedApplication].delegate;
UIActivityIndicatorView *bgImage = (UIActivityIndicatorView*) [appDelegate.viewController.view viewWithTag:7];
[bgImage removeFromSuperview];
[appDelegate.viewController dismissModalViewControllerAnimated:YES];
并且它工作正常,但是如果我每次使用相同的标签创建新实例时一次又一次地触摸它,但是当我使用我的代码删除它们时,它并没有删除所有它们,可能只是其中一个...... .
我怎样才能用类似的逻辑删除它们?
【问题讨论】:
【参考方案1】:这样做从 viewController 中删除所有 webView 添加以下代码:
for (id subview in self.view.subviews)
if([subview isKindOfClass:[UIWebView class]]) //remove only buttons
[subview removeFromSuperview];
// or use below to remove specific tag UIWebView
if(subview.tag == 999)
[subview removeFromSuperview];
【讨论】:
试过那个代码,只是用appDelegate.viewController.view
替换了self.view.subviews
,但是我在尝试if(subview.tag==999)
时没有tag
的属性以上是关于在循环中删除所有带有其他实例视图的 viewController的主要内容,如果未能解决你的问题,请参考以下文章