2016-12-07 15 views
0

Ich versuche immer noch, mich um Xamarin Forms (iOS) zu kümmern. Ich arbeite mit der WorkingWithWebView Vorlage von der Xamarin Website, die meistens funktioniert. Aber ich habe Probleme damit, es zum Laufen zu bringen, wenn ich die Tab-Ansicht aus der Klasse App() entferne.Xamarin Forms - Webansicht

Tab view (This is what works)

 var tabs = new TabbedPage(); 

     tabs.Children.Add (new LocalHtml {Title = "Local" }); 
     tabs.Children.Add (new LocalHtmlBaseUrl {Title = "BaseUrl" }); 
     tabs.Children.Add (new WebPage { Title = "Web Page"}); 
     tabs.Children.Add (new WebAppPage {Title ="External"}); 

     MainPage = tabs; 

Und wenn ich gehe zu LocalHtmlBaseUrl alles wie erwartet funktioniert.

Aber was ich möchte, ist eine Seite sofort zu laden, ohne eine Tabbed Navigation auf der Unterseite zu haben.

Bisher habe ich versucht, die folgendes zu tun:

 public App() 
     { 
      //var tabs = new TabbedPage(); 

      //tabs.Children.Add (new LocalHtml {Title = "Local" }); 
      //tabs.Children.Add (new LocalHtmlBaseUrl {Title = "BaseUrl" }); 
      //tabs.Children.Add (new WebPage { Title = "Web Page"}); 
      //tabs.Children.Add (new WebAppPage {Title ="External"}); 

      //MainPage = tabs; 
      var parentpage = new Page(); 

      var page = new WebView(); 

      var browser = new BaseUrlWebView(); // temporarily use this so we can custom-render in iOS 

      var htmlSource = new HtmlWebViewSource(); 

      htmlSource.Html = @"<html> 
           <head> 
           <link rel=""stylesheet"" href=""default.css""> 
           </head> 
           <body> 
           <h1>Xamarin.Forms</h1> 
           <p>The CSS and image are loaded from local files!</p> 
           <img src='XamarinLogo.png'/> 
           <p><a href=""index.html"">next page</a></p> 
           </body> 
           </html>"; 

      htmlSource.BaseUrl = DependencyService.Get<IBaseUrl>().Get(); 


      browser.Source = htmlSource; 
      page = browser; 
      parentpage = page; 
      MainPage = page; 

     } 

Am parentpage = Seite - Ich erhalte den Fehler:

Cannot implicitly convert type 'Xamarin.Forms.WebView' to 'Xamarin.Forms.Page'

So ist der Punkt dieser Arbeit! Ich wünsche nur, dass lokale HTML-Code zu laden, die in htmlSource.Html

Dank angegeben

Caz

Antwort

1

Ihrem Browser

var browser = new BaseUrlWebView(); 

// do your other browser setup logic here 

MainPage = new ContentPage { Content = browser }; 
+0

Dank innerhalb einer Seite enthalten sein muss für das ... Etwas von einer Noob-Frage, die ich kenne – Caz1224