WKWebView圖片文字自適應屏幕

前言

在開發中經常需要使用到WebView,然而加載HTML字符串后效果并不是全屏,這時候就需要做自適應屏幕大小。這里主要說一下WKWebView如何實現圖片和文字自適應屏幕。

1.文字自適應屏幕

創建WKWebView的時候,直接添加js來實現自適應。

// 自適應屏幕寬度js
NSString *jScript = @"var meta = document.createElement('meta'); meta.setAttribute('name', 'viewport'); meta.setAttribute('content', 'width=device-width'); document.getElementsByTagName('head')[0].appendChild(meta);";
WKUserScript *wkUScript = [[WKUserScript alloc] initWithSource:jScript injectionTime:WKUserScriptInjectionTimeAtDocumentEnd forMainFrameOnly:YES];
WKUserContentController *wkUController = [[WKUserContentController alloc] init];
[wkUController addUserScript:wkUScript];
WKWebViewConfiguration *wkWebConfig = [[WKWebViewConfiguration alloc] init];
wkWebConfig.userContentController = wkUController;
WKWebView *contentWeb = [[WKWebView alloc] initWithFrame:self.view.bounds configuration:wkWebConfig];

2.圖片自適應屏幕

圖片自適應屏幕采用添加HTML源碼的方式來實現自適應,使用下面源碼拼接上后臺的HTML源碼,然后直接加載既可。

NSString *htmlString = [NSString stringWithFormat:@"<html> \n"
                            "<head> \n"
                            "<style type=\"text/css\"> \n"
                            "body {font-size:15px;}\n"
                            "</style> \n"
                            "</head> \n"
                            "<body>"
                            "<script type='text/javascript'>"
                            "window.onload = function(){\n"
                            "var $img = document.getElementsByTagName('img');\n"
                            "for(var p in  $img){\n"
                            " $img[p].style.width = '100%%';\n"
                            "$img[p].style.height ='auto'\n"
                            "}\n"
                            "}"
                            "</script>%@"
                            "</body>"
                            "</html>", html];
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,422評論 25 708
  • 發現 關注 消息 iOS 第三方庫、插件、知名博客總結 作者大灰狼的小綿羊哥哥關注 2017.06.26 09:4...
    肇東周閱讀 12,246評論 4 61
  • 轉載請注明出處 1.QR碼的基本知識 QR Code是一個各邊模塊數都相等的方形圖案。它一共有40個版本(V1-V...
    只看你一眼閱讀 2,151評論 0 3
  • 臨睡了突然問了你一句,“我在外面上,你怎么個想我法”。 “想你又瘦了嗎,吃好喝好了碼,一個人在外頭能照顧好自己嗎....
    阿土127閱讀 286評論 0 0
  • 朝發夕至,中間改簽火車一次,晚上19:00回京。 幾天就待家里,新鮮空氣、暖和環境以及滿眼綠色,在南國看來習以為常...
    撿石頭的村童閱讀 179評論 0 0