UIWebView中的HTML元素的自定义UIView

时间:2011-06-29 18:57:39

标签: iphone uiwebview

我想在UIWebView的布局中添加自定义视图,以便HTML / JS / CSS使用我的自定义控件来描述“页面”的布局。理想情况下,可以放置例如一个特殊的元素触发回调到我的代码中,这个元素允许我将自己的UIView衍生物放在指定的坐标上(当然它会用父UIWebView滚动和缩放)和指定的参数集。

穷人的选择与此问题类似: Getting the position of an HTML element in UIWebView但是我不确定w.r.t布局变化有多可靠。

1 个答案:

答案 0 :(得分:3)

好吧,除了从链接中描述的SubView获取坐标之外,唯一的另一个技巧是附加到UIWebView的ScrollView,它恰好是它的子视图,通常是0,除非你做了奇怪的事情。然后,您的视图将与您网页的其余部分一起滚动和缩放。假设您使这些部分正常工作,您应该发布您生成的代码。看到它会很有趣。

例如,在150,200

附加按钮
    //Make a button
    UIButton * myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    myButton.frame = CGRectMake(150, 200, 50, 30 );
    myButton.titleLabel.text = @"Press me";
    [myButton  addTarget:self action:@selector(pressed:) forControlEvents:UIControlEventTouchUpInside];

     [[[self.myWebView subviews] objectAtIndex:0] addSubview:myButton];

虽然为了健壮性,您可能需要验证self.myWebView是否具有子视图,并且在添加之前它是UIScrollView类。