为什么我们在UIWebView中模拟触摸?

时间:2011-10-13 08:45:50

标签: ios uiwebview uitouch

我发现此代码很有趣。但我不明白为什么我们在UIWebView中模拟触摸?

enter code here
- (void)embedYouTube:(NSString *)urlString frame:(CGRect)frame {
NSString *embedHTML = @"<html><head>\
<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, urlString, frame.size.width, frame.size.height];
UIWebView *videoView = [[UIWebView alloc] initWithFrame:frame];
[videoView loadHTMLString:html baseURL:nil];
[self.view addSubview:videoView];
[videoView release];

[self performSelector:@selector(touchInView:) withObject:videoView afterDelay:3];

}

- (void)touchInView:(UIView*)view{
UITouch *touch = [[UITouch alloc] initInView:view];
UIEvent *eventDown = [[UIEvent alloc] initWithTouch:touch];

[touch.view touchesBegan:[eventDown allTouches] withEvent:eventDown];

[touch setPhase:UITouchPhaseEnded];
UIEvent *eventUp = [[UIEvent alloc] initWithTouch:touch];

[touch.view touchesEnded:[eventUp allTouches] withEvent:eventUp];

[eventDown release];
[eventUp release];
[touch release];
}

1 个答案:

答案 0 :(得分:3)

就像我在评论中发帖回答这个问题:它是为了“自动启动”YouTube视频。