iOS SDK检查视图是否已存在

Mat*_* S. 1 iphone uiwebview

我有一个以编程方式绘制的UIWebView,并通过多个子视图分配和显示(webview被添加到superview).

这一切都有效,但我有一个小问题:

如果2个不同的子视图显示此webview,那么我会获得2个webview,因此当1个视图关闭webview时,另一个视图仍然存在.我不想要这个.

最初我想在superview类中实现webview,但它没有用.

如何检查Web视图以查看是否还有其中一个?

小智 11

webview实例只能添加到视图层次结构一次.如果您同时在屏幕上显示两个Web视图,则它们是两个不同的实例.您应该跟踪添加到层次结构中的这些实例,当有人解除时,从超级视图中删除您正在跟踪的所有实例.

您还可以爬网视图层次结构并查找UIWebView的实例.

for (UIView *subView in [myView subviews]) {
    if ([subView isKindOfClass:[UIWebView class]]) {
        [subView removeFromSuperview];
    }
}
Run Code Online (Sandbox Code Playgroud)