我的應用程序中有一個頁面,顯示WKWebView
。它在iPhone上看起來很棒,但在iPad上看起來不太好。在iPad上的WKWebView中加載iPhone版本的頁面?
在iPad上,頁面太大並且被切斷,所以您必須水平滾動。這看起來不太好,但它不能很好地工作,因爲這是在頁面視圖控制器中。我希望一切都適合在頁面上。有沒有辦法加載iPhone版本的頁面,即使在iPad上?或者有另一種解決方案可以使用?
我的應用程序中有一個頁面,顯示WKWebView
。它在iPhone上看起來很棒,但在iPad上看起來不太好。在iPad上的WKWebView中加載iPhone版本的頁面?
在iPad上,頁面太大並且被切斷,所以您必須水平滾動。這看起來不太好,但它不能很好地工作,因爲這是在頁面視圖控制器中。我希望一切都適合在頁面上。有沒有辦法加載iPhone版本的頁面,即使在iPad上?或者有另一種解決方案可以使用?
要加載網站對iPad的iPhone版本,你需要改變你的Web視圖的用戶代理。首先,您需要找到適當的用戶代理值。從iPhone上轉到www.whatismyuseragent.net。在此之後,改變WKWebView
用戶代理:
webView.customUserAgent = @"Mozilla/5.0 (iPhone; CPU iPhone OS 8_0_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12A366 Safari/600.1.4";
當然,在現實世界中,你只需要在你的用戶代理「iPhone」取代的「iPad」的出現。例如:
[webView evaluateJavaScript:@"navigator.userAgent" completionHandler:^(id __nullable userAgent, NSError * __nullable error) {
webView.customUserAgent = [userAgent stringByReplacingOccurrencesOfString:@"iPad" withString:@"iPhone"];
// Start actual site loading.
}
很明顯,您需要在加載實際網頁之前這樣做。
我已經嘗試過,因爲我發佈了它,並沒有任何區別。 – CompC
可能是自動佈局和大小班是你想我想的! –
webview本身實際上被調整大小沒關係。只是它內部的內容比webview的框架大,所以它可以滾動。 – CompC