2016-05-15 21 views
0

xamarinでWebViewを作成すると、アプリケーションの起動時にWebViewが表示されません。ビューが再調整されたときに表示されます。 上記の問題を解決するにはどうすればよいですか。WebViewがレンダリングされないXamarin.Formsでアプリケーションが起動される

は、ここで私は問題がWebViewが、それはする必要がありますので、それはおそらくありますが、何の大きさを持っていませんどのように大きなないアイデアを持っていないということです

var browser = new WebView(); 
var htmlSource = new HtmlWebViewSource(); 

public SamplePage() 
{ 
    InitializeComponent(); 
    StackLayout stackLayout = new StackLayout 
    { 
     VerticalOptions = LayoutOptions.FillAndExpand, 
     Children = 
     { 
      sometextbox, 
      browser 
     } 
    } 
} 

//Code within some button's event 
htmlSource.Html = @"<html><body> 
     <h1>Xamarin.Forms</h1> 
     <p>Welcome to WebView.</p> 
     </body></html>"; 
    browser.Source = htmlSource; 

答えて

2

FillAndExpandはStackLayoutではなくwebview上にあるはずです

+0

問題を解決しました... –

1

を使用していたサンプルコードです。私は何をすることはとても似SizeChangedWidthHeightを割り当てることです:

public SamplePage() 
{ 
    InitializeComponent(); 
    StackLayout stackLayout = new StackLayout 
    { 
     VerticalOptions = LayoutOptions.FillAndExpand, 
     Children = 
     { 
      sometextbox, 
      browser 
     } 
    } 

    SizeChanged += (sender, args) => { 
     browser.WidthRequest = Width; 
     browser.HeightRequest = Height * 0.75; 
    } 
} 

ブラウザがまだ表示されない場合は、回転にWebViewを更新だけでなく、に同じコードを追加しますから、SizeChanged()コードを維持しますOnAppearing()

protected override void OnAppearing() { 
    base.OnAppearing(); 

    browser.WidthRequest = Width; 
    browser.HeightRequest = Height * 0.75; 
} 

あなたはそれを行うことができたり、あなたも、代わりに上記のコードを残し、ちょうどWebView.IsVisibleを変えることができるボタンをクリックするとそれを行うために必要な場合。

関連する問題