簡體   English   中英

iPhone uiwebview程序化縮放

[英]iphone uiwebview programmatic zoom

我正在開發一個將html文件本地保存在iPhone文件系統上的應用程序,然后將其加載到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嗎?

獲取UIWebview的子視圖,即UIScrollview

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

然后在其上使用縮放方法。

這是我能找到的唯一方法:(如果您願意,請指定您自己的尺寸,我在輸入表單字段后嘗試縮小)

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

要從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的此子類中,使用委托或通知來捕獲類上的點擊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM