簡體   English   中英

UIWebView內容大小

[英]UIWebView content size

我正在開發一個可以從網絡上檢索圖像的應用程序。 而不是實際下載圖像,而是嘗試在UIWebView中顯示它們。 我確實需要圖像在屏幕上具有特定的大小,因此我已經在Webview中創建了所需的大小,並告訴它縮放到scalesPageToFit,但是當我運行時,圖像在視圖中的大小不正確。 我正在使用1024x768圖像作為測試,並且嘗試了多次視圖尺寸迭代以使其在屏幕上正確顯示,但是最終結果是不合邏輯的尺寸,或者被裁剪了。

這是原始圖像; http://www.coolopticalillusions.com/backgrounds/freaky-desktop-background-7.jpg

我正在嘗試使圖像寬300,保持縱橫比,這意味着視圖應該高245。

第一個屏幕截圖使用300x245 UIWebView,您可以看到寬度正確,但是高度不正確,紅色框應與圖像的底部完全對齊http://img839.imageshack.us/f/sizecropped。 png /

第二個屏幕截圖使用300x300,該圖像的縮放比例對於視圖來說太寬,也太高。 http://img155.imageshack.us/f/sizetoobig.png/

我一直在努力使它達到我想要的目的,但我只是沒有任何成功。

編輯:我唯一相關的代碼是這樣的:

NSMutableString *urlString = [[NSMutableString alloc] initWithString:@"http://www.coolopticalillusions.com/backgrounds/freaky-desktop-background-7.jpg"];
NSURL* url = [[NSURL alloc] initWithString:urlString];
NSURLRequest *urlRequest = [[NSURLRequest alloc] initWithURL:url];
[messageView.imageWebView loadRequest:urlRequest];
messageView.imageWebView.scalesPageToFit = YES;

我將首先以應用程序框架為框架創建webview。 然后,您可以將圖像添加到具有您的尺寸(300x245)的新圖像視圖中。 將圖像作為子視圖添加到Web視圖。

    CGRect frame = [[UIScreen mainScreen] applicationFrame];
    webView = [[UIWebView alloc] initWithFrame:frame];

    // get image from web
    id path = @"http://www.coolopticalillusions.com/backgrounds/freaky-desktop-background-7.jpg";
    NSURL *url = [NSURL URLWithString:path];
    NSData *data = [NSData dataWithContentsOfURL:url];
    UIImage *img = [[UIImage alloc] initWithData:data cache:NO];

    // create new image view with your prefered size
    UIImageView *imageView = [[UIImageView alloc] initWithImage:img];
    imageView.frame = CGRectMake(0, 0, 300, 245);

    // add image view to your webview
    [webView addSubview:imageView];

讓我知道是否有幫助。

暫無
暫無

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

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