2016-07-28 21 views
3

Gibt es Unterstützung in XAML in Xamarin Forms zum Erstellen einer Navigationsleiste für iOS? Ich suchte in allen Xamarin Support, Foren und Internet ..Wie erstelle ich eine Navigationsleiste in Xamarin Forms für iOS?

An diesem Punkt bin ich nicht davon überzeugt, dass es Unterstützung, aber ich möchte wirklich nicht, das Rad neu erfinden, wenn es bereits erfunden ist ..


bearbeiten:

von Navigationsleiste meine ich diese thingie:

enter image description here

Antwort

6

Wenn Sie Ihre Seiten mit NavigationPage erstellen, erstellt Xamarin.Forms automatisch eine Navigationsleiste für iOS. Sie können auch schon einige Dinge in der Navigationsleiste, wie dies ändern:

NavigationPage.SetBackButtonTitle(this, ""); // Empty text 
NavigationPage.SetHasBackButton(this, false); // No back button 
NavigationPage.SetTitleIcon (this, someIcon); // Set the icon 

Werfen Sie einen Blick auf die folgenden Artikel für eine recht gute Erklärung der Unterschiede zwischen Content und NavigationPage: Xamarin.Forms Pages: ContentPage and NavigationPage

Xamarin offizielle Dokumentation umfasst auch die Navigation recht gut: Hierarchial Navigation


Haben Sie setzen Ihre root-Seite NavigationPage vom Typ sein? In Ihrer App Klasse, die Sie so etwas wie

MainPage = new ContentPage(); // etc. 

ändern sollte es so etwas wie dieses

MainPage = new NavigationPage(new FirstPageOfTheApp()); 
//FirstPageOfTheApp should be of type ContentPage. 

Also es zusammenzufassen, die Root-Seite sein muss NavigationPage und alle anderen Seiten des Typs sein ContentPage.

+0

Ich habe versucht, diese Eigenschaften in App.xaml.cs und in Page.xaml.cs ohne Wirkung einzustellen. Ich habe ein frisches Xamarin.Forms erstellt, ich renne es, es hat keine Navigationsleiste: http://imgur.com/a/FLpXG –

+0

Haben Sie Ihre Root-Seite auf den Typ NavigationPage eingestellt? In deiner App-Klasse solltest du etwas wie "MainPage = new ContentPage" usw. haben. Ändere es in etwa so: 'MainPage = new NavigationPage (new FirstPageOfTheApp());' FirstPageOfTheApp sollte vom Typ ContentPage sein. Um es zusammenzufassen, muss die Stammseite NavigationPage und alle anderen Seiten vom Typ ContentPage sein. Ich hoffe, dass das hilft. – hankide

+0

Wow, das scheint es zu sein! Ich habe in App.xaml.cs geändert, wie Sie gesagt haben, und es zeigt jetzt den Zurück-Button! (Nicht zuerst, nur nach dem ersten Seitenwechsel, aber ich denke, so sollte es sein) :) DANKE! –