2016-04-21 11 views
0

Ich verwende diese Bindung für diese fantastische Materialschubladenbibliothek von MikePenz.Navigationsschublade zurück Knopf Xamarin

Ich habe die Navigationsschublade mit dieser Bibliothek implementiert, und ich habe es auch geschafft, das Hamburgermenü auf den Zurück-Pfeil zu ändern, wenn ich in die Tiefe gehe. Jetzt habe ich ein paar Probleme damit der Rückwärtspfeil richtig funktioniert. Wenn ich auf den Zurück-Pfeil klicke, anstatt zur vorherigen Seite zurückzukehren, öffnet sich die Navigationsleiste.

Nach dem Blick in die ursprüngliche Bibliothek, die ich identifiziert habe, ist der folgende Code verantwortlich für die Zurück-Pfeil-Taste zu verwalten. Ich würde mich freuen, wenn mir jemand helfen kann, diesen Listener-Code in C# zu schreiben. Hier

.withOnDrawerNavigationListener(new Drawer.OnDrawerNavigationListener() { 
       @Override 
       public boolean onNavigationClickListener(View clickedView) { 
        //this method is only called if the Arrow icon is shown. The hamburger is automatically managed by the MaterialDrawer 
        //if the back arrow is shown. close the activity 
        AdvancedActivity.this.finish(); 
        //return true if we have consumed the event 
        return true; 
       } 
      }) 

ist die Bindung libray, die ich benutze: MaterialDrawer-Xamarin

Und dies ist der Link zum Original-Library: MaterialDrawer

Antwort

1

Probieren Sie etwas wie folgt aus:

var result = new DrawerBuilder() 
     .WithActivity(this) 
     .AddDrawerItems(
      //Add some items here 
      new DividerDrawerItem() 
     ) 
     .WithOnDrawerNavigationListener(this); 

und implementieren Drawer.IOnDrawerNavigationListener in Ihrer Aktivität so:

public bool OnNavigationClickListener(View clickedView) 
{ 
    this.Finish(); 
    return true; 
} 
+0

Ich bekomme diesen Fehler. wenn ich deinen Code ausprobiere. Fehler CS1502: Die beste überladene Methodenübereinstimmung für 'Mikepenz.MaterialDrawer.DrawerBuilder.WithOnDrawerNavigationListener (Mikepenz.MaterialDrawer.Drawer.IOnDrawerNavigationListener) 'hat einige ungültige Argumente (CS1502) –

+0

Meine Appologien, das funktioniert. Es ist nur, dass ich vergessen habe, die Schnittstelle zu erben –