2017-06-02 4 views
1

Ich versuche zu verhindern, dass der Benutzer meiner App den Hardware-Zurück-Button drückt. Ich habe diesen Code-Schnipsel gefunden, die hinter der XAML-Datei im Code ist:OnBackButtonPressed Nicht feuernd Xamarin Forms

protected override bool OnBackButtonPressed() 
    { 
     return true; 
    } 

Ich habe Variationen dieses versucht Boolean einschließlich anstelle von Bool und Rückkehr base.functionname nichts scheint diese Methode zu schießen. Hier ist der größere Kontext:

-Code hinter:

Dies ist die zweite Seite in dem Stapel und deaktivieren Sie die Taste nur auf dieser Seite geschehen muss nur, nein, wo sonst.

Jede Hilfe wäre willkommen.

+0

Ist das auf einer bestimmten Plattform? Oder irgendein? –

+0

Im Moment wird es auf Android bereitgestellt, aber es könnte auf Windows-Telefone erweitert werden. – user3355961

+0

können Sie versuchen, diese Einstellung

Antwort

0

Dies funktioniert für mich, ich versuchte in Android und iOS-Plattformen mit Xamarin.Forms.

Ich hoffe, Sie können mit diesem Stück Code auflösen.

namespace Test 
{ 
    public partial class TestPage2 : ContentPage 
    { 
     public TestPage2() 
     { 
      NavigationPage.SetHasBackButton(this, false); 
      InitializeComponent(); 
     } 

     protected override bool OnBackButtonPressed() 
     { 
      //return base.OnBackButtonPressed(); 
      return true; 
     } 
    } 
} 

Danke,

+0

Ich werde dies versuchen und Sie wissen lassen. – user3355961

+0

Ich habe Test-Projekt mit 2 Inhalt Seiten erstellt, getestet es gründlich, Es ist nicht rückwärts navigieren mit Hardware-Taste auch, ich versuchte in Simulator und Emulator von iOS bzw. Android. :) –

+0

Sorry, aber es hat nicht funktioniert. Ich habe xactly das, ich habe sogar versucht, zu reinigen und wieder aufzubauen. Eine Sache, die erwähnenswert ist, dass wenn ich die Überschreibung für OnBackPressed in der MainActivity.cs (so exklusiv für Android) verwenden, scheint es zu funktionieren, aber für alle Seiten, nicht nur Seite 2. – user3355961