iphone uiwebview程序化缩放

时间:2010-02-21 13:10:16

标签: iphone uiwebview zoom

我正在开发一个应用程序,在iPhone文件系统上本地保存html文件,然后在UIWebView中加载它们。我希望能够在UIWebView上以编程方式缩放或双击,我尝试搜索javascript代码,但我只能滚动。

我也试过了webview转换,但对我来说没有用。 我找到了这个方法

sendAction:to:from:forEvent:

http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIApplication_Class/Reference/Reference.html#jumpTo_26

在UIApplication类中,可以将操作发送到控件。

有人知道如何以编程方式将双击操作发送到某个x,y上的UIWebView吗?

3 个答案:

答案 0 :(得分:2)

获取UIWebview的子视图,这是一个UIScrollview

UIScrollView *sview = [[webview subviews] objectAtIndex:0];

然后使用缩放方法。

答案 1 :(得分:1)

这是我能找到完成它的唯一方法:(如果你愿意,请指定你自己的尺寸,我在输入表格字段后试图缩小)

UIScrollView *sv = [[webViewView subviews] objectAtIndex:0]; [sv zoomToRect:CGRectMake(0, 0, sv.contentSize.width, sv.contentSize.height) animated:YES];

答案 2 :(得分:0)

要从UIWebview中双击,你需要子类化UIWindow并使用该方法,

- (void)sendEvent:(UIEvent *)event {
    NSLog(@"tap detect");
    NSArray *allTouches = [[event allTouches] allObjects];
    UITouch *touch = [[event allTouches] anyObject];
    UIView *touchView = [touch view];

    if (touchView && [touchView isDescendantOfView:urWebview]) {
        //
        // touchesBegan
        //

        if(touch.tapCount==2){
            //
            // doubletap
            //
        }
    }
}

从UIWindow的这个子类中,使用委托或通知来捕捉你的课程。