Xamarin.Forms プロジェクトで WebView のカスタム レンダラーを作成しました。WebView は Android でうまく機能します。残念ながら、iOS では、デバイスを回転させると、Web ページ (任意の Web ページ) が WebView の新しいサイズに正しく調整されません。組み込みの WebView for Forms を使用すると、回転時にページのサイズが正しく変更されます。
カスタム レンダラーのどこが間違っていますか?
以下は、私のカスタム レンダラーの簡素化されたバージョンです (問題は引き続き発生します)。
using Xamarin.Forms.Platform.iOS;
using Xamarin.Forms;
using UIKit;
using Foundation;
[assembly: ExportRenderer(typeof(WebView), typeof(MyProject.iOS.WebViewRenderer))]
namespace MyProject.iOS {
public class WebViewRenderer : ViewRenderer<WebView, UIWebView> {
protected override void OnElementChanged(ElementChangedEventArgs<WebView> e) {
if (Control == null) {
var webView = new UIWebView(Frame);
webView.AutoresizingMask = UIViewAutoresizing.All;
SetNativeControl(webView);
webView.LoadRequest(new NSUrlRequest(new NSUrl("http://cnn.com")));
}
}
}
}