我正在创建一个UIScrollView
并添加四个UIWebViews
作为子视图。
我想做两件事:
- 在创建它时标记每个
WebView
,以便在UIScrollView
后面解决它。 - 在特定时刻 (
scrollViewWillBeginDragging
) 将 JavaScript 发送到UIWebView
当前由UIScrollview
.
我不知道如何标记子视图,也不知道如何解决它。所以我的两个问题是:
Q1。如何正确标记子视图(同时将其添加到 UISCrollView)?
Q2。如何将命令寻址到 UIScrollView 内的子视图?((最好的情况:当前显示的那个))
谢谢你的帮助!
也许问题通过查看实际代码来澄清:
这是我用来创建UIWebviews
并将它们添加到UIScrollview
(scrollView1)的代码:
- (void)viewDidLoad{
scrollView1.delegate = self;
scrollView1.pagingEnabled = YES;
scrollView1.delaysContentTouches = NO;
NSInteger numberOfViews = 4;
for (int i = 0; i < numberOfViews; i++) {
CGFloat yOrigin = i * self.view.frame.size.width;
UIWebView *WebView1 = [[UIWebView alloc] initWithFrame:CGRectMake(yOrigin, 0, self.view.frame.size.width, self.view.frame.size.height)];
NSString *path = [[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"page_%d", i] ofType:@"html"];
NSURL *url = [NSURL fileURLWithPath:path];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[WebView1 loadRequest:request];
//HERE I'M TRYING TO TAG THE VIEW
WebView1.tag = i;
[scrollView1 addSubview:awesomeView];
[WebView1 release];
}
scrollView1.contentSize = CGSizeMake(self.view.frame.size.width * numberOfViews, self.view.frame.size.height);
这是我想用来解决(scrollView1)UIWebviews
内部的代码:UIScrollview
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView1{
NSString *JavaScriptCommand = [NSString stringWithFormat:@"player.pause();"];
<strong>//HERE I'M TRYING TO ACCESS THE TAGGED VIEW</strong>
[scrollView1.????? stringByEvaluatingJavaScriptFromString:JavaScriptCommand];
}