2015-09-16 6 views
7

In meiner Xamarin Forms iOS-Anwendung erscheint der vorherige Seitenname auch mit der Zurück-Taste auf allen Seiten. Gibt es eine Möglichkeit, den Titel der vorherigen Seite zu verbergen?Xamarin Forms: Wie verberge ich den Titel der Rückseite?

enter image description here

+0

möglich Duplikat [Xamarin IOS ausblenden bar Zurück-Taste] (http://stackoverflow.com/questions/21206744/xamarin-ios-hide-bar-back-button) – Joehl

+1

Meine Anwendung ist Xamarin Formen nicht Xamarin native iOS-App. –

Antwort

20

Wenn Sie Navigation Seite verwenden, können Sie eine leere Zeichenfolge für die Zurück-Taste Titel verwenden können:

NavigationPage.SetBackButtonTitle(this, ""); //Empty string as title 

Soweit ich mich erinnere, wird es die nächste Seite auf das Navigationsstapel beeinflussen (Die Seite nach 'Dies' hat einen leeren Titel für die Zurück-Schaltfläche). Zitier mich nicht dazu.

Sie können den Zurück-Taste mit verbergen:

NavigationPage.SetHasBackButton(this, false); 

Eine weitere Möglichkeit, eine modale Seite zu verwenden ist durch Navigation.PushAsync(yourPage) mit Navigation.PushModalAsync(yourPage) ersetzt, die die Seite modal präsentieren.

Zu Ihrer Information, die Zurück-Schaltfläche wird automatisch mit der Title-Eigenschaft der vorherigen Seite ausgefüllt (oder standardmäßig mit Zurück, wenn der Titel nicht festgelegt wurde).

+0

Ich kann die SetHasBackButton-Methode in der NavigationPage-Klasse nicht finden. –

+0

@RenzoCiot Es ist eine statische Methode, nur für den Fall, dass Sie versuchen, es für eine Instanz aufzurufen. –

3

Es gibt auch eine Problemumgehung, um Titel der Schaltfläche global in der gesamten Anwendung zu verbergen. in Ihrem AppDelegate.cs in FinishedLaunching Methode hinzufügen:

UIBarButtonItem.Appearance.SetBackButtonTitlePositionAdjustment (new UIOffset (-100, -60), UIBarMetrics.Default); 
0

Hinzufügen zu Cuckooshka Antwort, Zurück-Button Titel als

im Landschaftsmodus versteckt wird
UIBarButtonItem.Appearance.SetBackButtonTitlePositionAdjustment (new UIOffset (-100, -60), UIBarMetrics.LandscapePhone);