在iOS中转储视图

时间:2012-02-21 01:19:46

标签: ios views dump

更新:用户点击网页浏览时可以打开播放器

#pragma mark -
#pragma mark addYouTubeView

- (void)addYouTubeVideoWebView:(NSString*)url frame:(CGRect)frame 
{  
    // embed
    NSString* embedHTML = @"\
    <html>\
        <body style=\"margin:0\">\
            <embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" width=\"%0.0f\" height=\"%0.0f\"></embed>\
        </body>\
    </html>\
    ";

    NSString* html = [NSString stringWithFormat:embedHTML, url, frame.size.width, frame.size.height];

    UIWebView * webView = [[UIWebView alloc] initWithFrame:frame];
    [webView setOpaque:NO];
    [webView setBackgroundColor:[UIColor clearColor]];
    [webView loadHTMLString:html baseURL:nil];

    // fix webview in the frame and make it no move
    [self removeBounceEffect:webView];

    [self.view addSubview:webView];
}

嗨,大家好我遇到了一些我无法解决的问题。

我看到了这个答案here然后我决定转储视图以查看是否存在名为** YTMoviePlayer **的内容。然后我尝试使用方法here来转储视图。由于我不知道如何在视频播放时触发“转储”方法,我使用“performselector”:

[self performSelector:@selector(dumpViews:) withObject:[[UIApplication sharedApplication] keyWindow] afterDelay:3];

- (void) dumpViews:(UIView *)view
{
    dumpViews(view, @"", @"");
}

问题是,在播放器显示之前,在日志中转储的视图仍然是视图,因此我无法看到它是什么播放器。所以我的问题是如何随时转储视图?为什么“转储”方法与典型的objective-c方法不同?

谢谢你。

1 个答案:

答案 0 :(得分:1)

您链接的dumpViews实际上是普通的C函数,而不是Objective C方法。