Android UINavigationController-ähnliche Funktion

Auf dem iPhone benutze ich einen Navigationscontroller zum Drücken und Pop von Ansichten aus. Sehr praktisch

Gibt es ein gleichwertiges in Android?

  • Zwei XML-Elemente mit derselben ID
  • Cursor-Adapter und sqlite Beispiel
  • Wie kann ich die Aktivität zur Laufzeit einstellen? Es funktioniert nicht call setTheme before onCreate und setContentView
  • Absicht Service niemals angerufen
  • Wie man eine gemeinsame Bibliothek baut und es in einem anderen Programm ndk anruft
  • Fehler: Ausführung fehlgeschlagen für Task, beendet mit Nicht-Null-Exit-Wert 1
  • Finde Gerät bluetooth MAC Adresse mit Adb
  • Frontkamera nehmen sehr dunkle Aufnahme in android
  • Liste der unterstützten nativen Code von Android-Handys
  • Wie kann ich ProgressDialog Spinner in Android ändern?
  • WARNUNG: File.mkdir () wird ignoriert
  • Zoomen und Ziehen von Bildern mit Matrix in Android
  • 3 Solutions collect form web for “Android UINavigationController-ähnliche Funktion”

    Typisch in Android wird jede Ansicht in ihrer eigenen Aktivität angezeigt. Sie können über Aktivitäten in der Dokumentation der Anwendungsgrundlagen lesen. Um zu einer neuen Aktivität oder Ansicht zu gelangen, verwenden Sie eine Absicht .

    Wenn du es noch nicht getan hast, würde ich es sehr empfehlen, durch diese einleitenden Android-Foren zu lesen. Sie sind nicht zu lang und machen einen guten Job, die grundlegende Programmstruktur zu erläutern.

    Das ist eine alte Frage, aber ich glaube, die Antwort hat sich geändert. Es ist jetzt möglich, den Nav-Stack in iOS in android mit Fragmenten nachzuahmen. http://developer.android.com/reference/android/app/Fragment.html

    Grundsätzlich anstatt von Aktivität zu Aktivität zu springen, verbleibst du stattdessen in einer Aktivität, die das Display, die Organisation und die Animation von Fragmenten steuert, die jeweils ihr eigenes Verhalten ähnlich wie das NavController / UIViewController-Modell in iOS enthalten.

    Es ist auch rückwärts kompatibel als statische Bibliothek, so dass Sie es auf Pre-Honeycomb Geräte implementieren können. Strategien für Waben- und Rückwärtskompatibilität

    Ich habe ein Framework (github) gemacht , um ein hierarchisches Navigationsmuster zur Verfügung zu stellen, mit Animationen, um Sinn für Navigation zu geben, anstatt neue Aktivitäten jedes Mal zu starten.

    Android Basic Framework Image

    Hier ist, wie man es benutzt:

    • Fügen Sie das Framework zu Ihrem Projekt als Modul hinzu
    • Füge eine neue Java-Klasse in deinem Projekt hinzu ("File – New – Java Class"). Hinweis: Wenn Sie die Activity.java-Datei bearbeiten, die Ihnen die Vorlage zur Verfügung stellt, löschen Sie alle ihre Implementierungen und lassen Sie sie leer.
    • Machen Sie es erweitern NavigationAktivität
    • Implementieren Sie alle Methoden der NavigationActivity abstrakt

    ( In Android Studio, wenn Sie auf Alt + einfügen und implementieren – Methoden alle Funktionsdefinitionen automatisch generiert werden ).

    public class NavigationTest extends NavigationActivity{ @Override public Fragment firstFragment() { //return the first fragment that will be shown } @Override public Boolean showBackButtonInFirstFragment() { //show back button already in the first Fragment //set to True if this activity is called by another Activity //the back button will then pop back to the previous Activity } @Override public Boolean showMasterDetailLayoutInTablets() { //set to false if you don't want a master-detail layout in tablets } } 

    Ein neues Fragment vorstellen

    Sie können ein neues Fragment (mit einer schönen Animation) vorstellen , indem Sie die pushFragment- Methode von NavigationActivity anrufen .

     public void pushFragment(Fragment newFragment, animationType animation, boolean showAsDetailFragmentIfPossible) 

    NewFragment (Fragment): Neues Fragment, das präsentiert wird

    Animation (animationType): Animationstyp enum: RIGHT_TO_LEFT, BOTTOM_TO_TOP, FLIP

    ShowAsDetailFragmentIfPossible (boolean): Wenn Sie als True gesetzt sind, befindet sich der Benutzer in einem Tablet und Sie verwenden ein Master-Detail-Layout, das Fragment wird im Detail Fragment (das Panel rechts) angezeigt!

    Da Sie auf die Aktivität von jedem Fragment mit der Methode getActivity () zugreifen können , können Sie ein neues Fragment aus dem aktuell angezeigten Fragment anzeigen . Zum Beispiel können Sie diesen Code in eine Schaltfläche klicken klicken Zuhörer:

     NextFragment f = new NextFragment(); NavigationActivity nav =((NavigationActivity)getActivity()); nav.pushFragment(f,NavigationActivity.animationType.RIGHT_TO_LEFT,false); 

    Sie müssen sich keine Sorgen um die Umsetzung des Back-Button-Verhaltens machen. Dies wird automatisch von der NavigationActivity-Klasse behandelt.

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.