Χωρίσματα χωρίς προβλήματα: Χρησιμοποιώντας το στοιχείο Αρχιτεκτονικής πλοήγησης Android

Συγγραφέας: John Stephens
Ημερομηνία Δημιουργίας: 2 Ιανουάριος 2021
Ημερομηνία Ενημέρωσης: 6 Ιούλιος 2024
Anonim
Χωρίσματα χωρίς προβλήματα: Χρησιμοποιώντας το στοιχείο Αρχιτεκτονικής πλοήγησης Android - Εφαρμογές
Χωρίσματα χωρίς προβλήματα: Χρησιμοποιώντας το στοιχείο Αρχιτεκτονικής πλοήγησης Android - Εφαρμογές

Περιεχόμενο


Κατά τη διάρκεια της διάσκεψης I / O του 2018, η Google ανακοίνωσε μια νέα προσέγγιση για την ανάπτυξη εφαρμογών Android.

Η επίσημη σύσταση της Google είναι να δημιουργήσει μια ενιαία Δραστηριότητα που να αποτελεί το κύριο σημείο εισαγωγής της εφαρμογής σας και στη συνέχεια να παραδώσει το υπόλοιπο περιεχόμενο της εφαρμογής σας ως θραύσματα.

Ενώ η σκέψη να ζυγίζονται όλες αυτές οι διαφορετικές συναλλαγές θραυσμάτων και κύκλοι ζωής μπορεί να ακούγεται σαν εφιάλτης, στο I / O 2018 η Google ξεκίνησε επίσης το Component Architecture Navigation, το οποίο έχει σχεδιαστεί για να σας βοηθήσει να υιοθετήσετε αυτή τη μοναδική δομή Δραστηριοτήτων.

Σε αυτό το άρθρο, θα σας δείξουμε πώς μπορείτε να προσθέσετε το στοιχείο πλοήγησης στο έργο σας και πώς μπορείτε να το χρησιμοποιήσετε για να δημιουργήσετε γρήγορα και εύκολα μια εφαρμογή Single-Activity, πολλαπλών τμημάτων, με λίγη βοήθεια από το νέο πρόγραμμα περιήγησης πλοήγησης του Android Studio. Αφού δημιουργήσετε και συνδέσετε τα θραύσματά σας, θα βελτιώσουμε τις τυπικές μεταβάσεις τεμαχίων του Android χρησιμοποιώντας το στοιχείο πλοήγησης και τον Επεξεργαστή για να δημιουργήσετε μια σειρά πλήρως προσαρμόσιμων κινούμενων εικόνων μετάβασης.


Τι είναι το στοιχείο Αρχιτεκτονικής Πλοήγησης;

Μέρος του Android JetPack, το στοιχείο Αρχιτεκτονική πλοήγησης σας βοηθά να απεικονίσετε τις διάφορες διαδρομές μέσω της εφαρμογής σας και απλοποιεί τη διαδικασία υλοποίησης αυτών των διαδρομών, ιδιαίτερα όταν πρόκειται για τη διαχείριση συναλλαγών θραυσμάτων.

Για να χρησιμοποιήσετε το στοιχείο πλοήγησης, θα χρειαστεί να δημιουργήσετε ένα γράφημα πλοήγησης, το οποίο είναι ένα αρχείο XML που περιγράφει τον τρόπο με τον οποίο οι δραστηριότητες και τα θραύσματα της εφαρμογής σχετίζονται μεταξύ τους.

Ένα γράφημα πλοήγησης αποτελείται από:

  • Προορισμοί: Οι μεμονωμένες οθόνες που μπορεί να πλοηγηθεί ο χρήστης
  • Ενέργειες: Οι διαδρομές που μπορεί να κάνει ο χρήστης ανάμεσα στους προορισμούς της εφαρμογής

Μπορείτε να δείτε μια οπτική αναπαράσταση του γραφήματος πλοήγησης του έργου σας στο Editor πλοήγησης του Android Studio. Παρακάτω, θα βρείτε ένα γράφημα πλοήγησης που αποτελείται από τρεις προορισμούς και τρεις ενέργειες όπως εμφανίζεται στον Επεξεργαστή πλοήγησης.


Το στοιχείο πλοήγησης έχει σχεδιαστεί για να σας βοηθήσει να υλοποιήσετε τη νέα συνιστώμενη δομή εφαρμογών της Google, όπου μια μοναδική Δραστηριότητα "φιλοξενεί" τον Πίνακα πλοήγησης και όλοι οι προορισμοί σας υλοποιούνται ως θραύσματα. Σε αυτό το άρθρο, θα ακολουθήσουμε αυτή τη συνιστώμενη προσέγγιση και θα δημιουργήσουμε μια εφαρμογή που αποτελείται από έναν MainActivity και τρεις προορισμούς θραυσμάτων.

Ωστόσο, το στοιχείο πλοήγησης δεν είναι μόνο για εφαρμογές που έχουν αυτή τη συνιστώμενη δομή. Ένα έργο μπορεί να έχει πολλαπλά Διαγράμματα Πλοήγησης και μπορείτε να χρησιμοποιήσετε θραύσματα και Δραστηριότητες ως προορισμούς σε αυτά τα Γραφήματα Πλοήγησης. Εάν μεταφέρετε ένα μεγάλο, ώριμο έργο στο στοιχείο πλοήγησης, ίσως είναι ευκολότερο να διαχωρίσετε τις ροές πλοήγησης της εφαρμογής σας σε ομάδες, όπου κάθε ομάδα αποτελείται από μια "κύρια" δραστηριότητα, κάποια σχετικά θραύσματα και το δικό της Πλοήγηση.

Προσθήκη του Επεξεργαστή Πλοήγησης στο Android Studio

Για να σας βοηθήσει να αξιοποιήσετε στο έπακρο το στοιχείο πλοήγησης, το Android Studio 3.2 Canary και το υψηλότερο διαθέτει ένα νέο πρόγραμμα επεξεργασίας πλοήγησης.

Για να ενεργοποιήσετε αυτόν τον επεξεργαστή:

  • Επιλέξτε "Προτιμήσεις Android ...>" από τη γραμμή μενού του Android Studio.
  • Στο αριστερό μενού, επιλέξτε "Πειραματικό".
  • Αν δεν έχει ήδη επιλεγεί, επιλέξτε το πλαίσιο ελέγχου "Ενεργοποίηση επεξεργασίας πλοήγησης".

  • Κάντε κλικ στο κουμπί "OK".
  • Επανεκκινήστε το Android Studio.

Σχέσεις εξαρτήσεων: Παράθυρο περιήγησης και πλοήγηση

Δημιουργήστε ένα νέο έργο με τις ρυθμίσεις της επιλογής σας, στη συνέχεια ανοίξτε το αρχείο build.gradle και προσθέστε το θραύσμα πλοήγησης και την πλοήγηση ως εξαρτήσεις έργου:

dependencies {υλοποίηση fileTree (dir: libs, include:) υλοποίηση com.android.support:appcompat-v7:28.0.0 υλοποίηση com.android.support.constraint: constraint-layout: 1.1.3 // Προσθέστε την ακόλουθη // εφαρμογή "android.arch.navigation: πλοήγηση-θραύσμα: 1.0.0-alpha05" // Navigation-UI παρέχει πρόσβαση σε ορισμένες βοηθητικές λειτουργίες // implementation "android.arch.navigation: navigation-ui: 1.0.0-alpha05" .android.support: support-v4: 28.0.0 testImplementation junit: junit: 4.12 καιroidTestImplementation com.android.support.test: runner: 1.0.2 καιroidTestImplementation com.android.support.test.espresso: espresso-core: 3.0.2 }}

Αποκτήστε μια οπτική επισκόπηση της πλοήγησης της εφαρμογής σας

Για να δημιουργήσετε ένα γράφημα πλοήγησης:

  • Ελέγξτε-κάντε κλικ στον κατάλογο "res" του έργου σας και επιλέξτε "Νέα> Κατάλογος πόρων του Android".
  • Ανοίξτε το αναπτυσσόμενο μενού "Τύπος πόρων" και επιλέξτε "πλοήγηση".
  • Επιλέξτε "OK".
  • Κάντε κλικ στο νέο σας κατάλογο "res / navigation" και επιλέξτε "Νέα> αρχείο πόρων πλοήγησης".
  • Ανοίξτε το αναπτυσσόμενο μενού "Τύπος πόρων" και επιλέξτε "Πλοήγηση".

  • Δώστε αυτό το όνομα αρχείου. Χρησιμοποιώ το "nav_graph".
  • Κάντε κλικ στο κουμπί "OK".

Ανοίξτε το αρχείο "res / navigation / nav_graph" και ο Επεξεργαστής περιήγησης θα ξεκινήσει αυτόματα. Παρόμοια με τον επεξεργαστή διάταξης, ο Επεξεργαστής περιήγησης διαιρείται σε καρτέλες "Σχεδίαση" και "Κείμενο".

Εάν επιλέξετε την καρτέλα "Κείμενο", θα δείτε την ακόλουθη XML:

<? xml version = "1.0" encoding = "utf-8";> // Η πλοήγηση είναι ο ριζικός κόμβος κάθε γραφήματος πλοήγησης //

Στην καρτέλα "Σχεδίαση" μπορείτε να δημιουργήσετε και να επεξεργαστείτε οπτικά την πλοήγηση της εφαρμογής σας.

Από αριστερά προς δεξιά, ο Επεξεργαστής πλοήγησης αποτελείται από:

  • Μια λίστα προορισμών: Αυτό περιλαμβάνει όλους τους προορισμούς που συνθέτουν αυτό το συγκεκριμένο Πλοήγηση, καθώς και τη Δραστηριότητα όπου φιλοξενείται ο Πίνακας πλοήγησης.
  • Ο επεξεργαστής γραφημάτων: Ο επεξεργαστής γραφημάτων παρέχει μια οπτική επισκόπηση όλων των προορισμών του γραφήματος και των ενεργειών που τις συνδέουν.
  • Ο επεξεργαστής χαρακτηριστικών: Εάν επιλέξετε έναν προορισμό ή μια ενέργεια στον επεξεργαστή γραφημάτων, ο πίνακας "Χαρακτηριστικά" θα εμφανίσει πληροφορίες σχετικά με το αντικείμενο που έχετε επιλεγεί.

Πληθυσμός του γραφήματος πλοήγησης: Προσθήκη προορισμών

Το γραφικό μας πλοήγησης είναι προς το παρόν κενό. Ας προσθέσουμε ορισμένους προορισμούς.

Μπορείτε να προσθέσετε Δραστηριότητες ή θραύσματα που υπάρχουν ήδη, αλλά μπορείτε επίσης να χρησιμοποιήσετε το Γράφημα πλοήγησης για να δημιουργήσετε γρήγορα και εύκολα νέα θραύσματα:

  • Δώστε στο κουμπί "Νέο προορισμό" ένα κλικ και επιλέξτε "Δημιουργία κενών προορισμών".

  • Στο πεδίο "Όνομα θραύσματος", εισάγετε το όνομα κλάσης του θραύσματός σας. Χρησιμοποιώ το "FirstFragment".
  • Βεβαιωθείτε ότι έχει επιλεγεί το πλαίσιο ελέγχου "Δημιουργία διάταξης XML".
  • Ολοκληρώστε το πεδίο "Όνομα διάταξης διάταξης". Χρησιμοποιώ το "fragment_first".
  • Κάντε κλικ στο κουμπί "Τέλος".

Μια υποκατηγορία FirstFragment και το αντίστοιχο αρχείο πόρων "layout_first.xml" θα προστεθούν τώρα στο έργο σας. Το FirstFragment θα εμφανιστεί επίσης ως προορισμός στο Graph Navigation.

Αν επιλέξετε FirstFragment στον επεξεργαστή πλοήγησης, ο πίνακας "Χαρακτηριστικά" θα εμφανίσει ορισμένες πληροφορίες σχετικά με αυτόν τον προορισμό, όπως το όνομα της κλάσης του και το αναγνωριστικό που θα χρησιμοποιήσετε για να αναφερθείτε σε αυτόν τον προορισμό αλλού στον κώδικα σας.

Ξεπλύνετε και επαναλάβετε για να προσθέσετε ένα δεύτερο και ένα τρίτο τμήμα στο έργο σας.

Μεταβείτε στην καρτέλα "Κείμενο" και θα δείτε ότι η XML έχει ενημερωθεί για να αντικατοπτρίζει αυτές τις αλλαγές.

Κάθε γράφημα πλοήγησης έχει έναν προορισμό έναρξης, που είναι η οθόνη που εμφανίζεται όταν ο χρήστης εκκινεί την εφαρμογή σας. Στον παραπάνω κώδικα, χρησιμοποιούμε το FirstFragment ως προορισμό εκκίνησης της εφαρμογής μας. Αν μεταβείτε στην καρτέλα "Σχεδίαση", τότε θα παρατηρήσετε ένα εικονίδιο σπίτι, το οποίο επίσης σηματοδοτεί το FirstFragment ως προορισμό έναρξης του γραφήματος.

Αν προτιμάτε να χρησιμοποιήσετε ένα διαφορετικό σημείο εκκίνησης, επιλέξτε την εν λόγω Δραστηριότητα ή θραύσμα και μετά επιλέξτε "Set Start Destination" από τον πίνακα "Χαρακτηριστικά".

Εναλλακτικά, μπορείτε να κάνετε αυτήν την αλλαγή σε επίπεδο κώδικα:

Ενημέρωση των σχεδίων σας

Τώρα έχουμε τους προορισμούς μας, ας προσθέσουμε ορισμένα στοιχεία διεπαφής χρήστη, έτσι ώστε να είναι πάντα σαφές ποιο θραύσμα βλέπουμε αυτήν τη στιγμή.

Θα προσθέσω τα παρακάτω σε κάθε κομμάτι:

  • Ένα TextView που περιέχει τον τίτλο του αποσπάσματος
  • Ένα κουμπί που θα επιτρέψει στο χρήστη να πλοηγηθεί από το ένα κομμάτι στο επόμενο

Εδώ είναι ο κώδικας για κάθε αρχείο πόρων διαμόρφωσης:

Fragment_first.xml

Fragment_second.xml

Fragment_third.xml

Σύνδεση των προορισμών σας με ενέργειες

Το επόμενο βήμα είναι η σύνδεση των προορισμών μας μέσω ενεργειών.

Μπορείτε να δημιουργήσετε μια ενέργεια στο πρόγραμμα περιήγησης πλοήγησης χρησιμοποιώντας απλή μεταφορά και απόθεση:

  • Βεβαιωθείτε ότι έχετε επιλέξει την καρτέλα "Σχεδίαση" του Editor.
  • Τοποθετήστε το δείκτη του ποντικιού πάνω από τη δεξιά πλευρά του προορισμού που θέλετε να πλοηγηθείτε από, η οποία στην περίπτωση αυτή είναι FirstFragment. Πρέπει να εμφανιστεί ένας κύκλος.
  • Κάντε κλικ και σύρετε τον κέρσορα στον προορισμό που θέλετε να περιηγηθείτε προς το, το οποίο είναι το δεύτερο τμήμα. Θα πρέπει να εμφανιστεί μια μπλε γραμμή. Όταν το SecondFragment επισημαίνεται με μπλε χρώμα, αποδεσμεύστε το δρομέα για να δημιουργήσετε μια σύνδεση μεταξύ αυτών των προορισμών.

Τώρα πρέπει να υπάρχει ένα βέλος δράσης που να συνδέει το FirstFragment με το SecondFragment. Κάντε κλικ για να επιλέξετε αυτό το βέλος και ο πίνακας "Χαρακτηριστικά" θα ενημερωθεί για να εμφανίσει ορισμένες πληροφορίες σχετικά με αυτήν την ενέργεια, συμπεριλαμβανομένου του αναγνωριστικού που έχει αντιστοιχιστεί στο σύστημα.

Αυτή η αλλαγή αντικατοπτρίζεται επίσης στη XML XML του Navigation Graph:

… … …

Ξεπλύνετε και επαναλάβετε για να δημιουργήσετε μια ενέργεια που συνδέει το SecondFragment με το ThirdFragment και μια ενέργεια που συνδέει το ThirdFragment με το FirstFragment.

Φιλοξενία του γραφήματος πλοήγησης

Ο Γράφημα πλοήγησης παρέχει μια οπτική αναπαράσταση των προορισμών και των ενεργειών της εφαρμογής σας, αλλά η κλήση αυτών των ενεργειών απαιτεί κάποιο πρόσθετο κωδικό.

Αφού δημιουργήσετε ένα γράφημα πλοήγησης, θα πρέπει να το φιλοξενήσετε μέσα σε μια δραστηριότητα προσθέτοντας ένα NavHostFragment στο αρχείο διάταξης της συγκεκριμένης δραστηριότητας. Αυτό το NavHostFragment παρέχει ένα κοντέινερ όπου μπορεί να εμφανιστεί η πλοήγηση και θα είναι επίσης υπεύθυνη για την εναλλαγή θραυσμάτων μέσα και έξω καθώς ο χρήστης περιηγείται γύρω από την εφαρμογή σας.

Ανοίξτε το αρχείο "activity_main.xml" του έργου σας και προσθέστε ένα NavHostFragment.

<? xml version = "1.0" encoding = "utf-8";> // Δημιουργία θραύσματος που θα λειτουργεί ως NavHostFragment //

Στο παραπάνω κώδικα, η εφαρμογή app: defaultNavHost = "true" επιτρέπει στο Host Navigation να παρακολουθεί κάθε φορά που πατάει το κουμπί "Back" του συστήματος, έτσι ώστε η εφαρμογή να τιμά πάντα την πλοήγηση που περιγράφεται στο Graph Navigation.

Τρέχουσες μεταβάσεις με το NavController

Στη συνέχεια, πρέπει να εφαρμόσουμε ένα NavController, το οποίο είναι ένα νέο στοιχείο που είναι υπεύθυνο για τη διαχείριση της διαδικασίας πλοήγησης μέσα σε ένα NavHostFragment.

Για να μεταβείτε σε μια νέα οθόνη, πρέπει να ανακτήσετε ένα NavController χρησιμοποιώντας το Navigation.findNavController, να καλέσετε τη μέθοδο πλοήγησης () και, στη συνέχεια, να περάσετε είτε το αναγνωριστικό του προορισμού στον οποίο πλοηγείστε είτε την ενέργεια που θέλετε να καλέσετε. Για παράδειγμα, καλώ το "action_firstFragment_to_secondfragment", το οποίο θα μεταφέρει τον χρήστη από το FirstFragment στο SecondFragment:

NavController navController = Navigation.findNavController (getActivity (), R.id.my_nav_host_fragment). navController.navigate (R.id.action_firstFragment_to_secondfragment);

Ο χρήστης θα μετακινηθεί σε μια νέα οθόνη κάνοντας κλικ σε ένα κουμπί, επομένως πρέπει επίσης να εφαρμόσουμε ένα OnClickListener.

Αφού πραγματοποιήσετε αυτές τις αλλαγές, το FirstFragment θα πρέπει να φαίνεται ως εξής:

εισαγωγή android.os.Bundle; εισαγωγή καιroid.support.annotation.NonNull; εισαγωγή android.support.notnotation.Nullable; εισαγωγή καιroid.support.v4.app.Fragment; εισαγωγή καιroid.view.LayoutInflater; εισαγωγή android.view.View; εισαγωγή καιroid.view.ViewGroup; εισαγωγή καιroid.widget.Button; εισαγωγή androidx.navigation.NavController; εισαγωγή καιroid.navigation.Navigation; η δημόσια κλάση FirstFragment επεκτείνει το τμήμα {public FirstFragment () {} @Override public void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState). if (getArguments ()! = null) {}} @Override δημόσια προβολή onCreateView (LayoutInflater inflater, δοχείο ViewGroup, Bundle savedInstanceState) {return inflater.inflate (R.layout.fragment_first, container, false); } @Override public void onViewCreated (@NonNull προβολή προβολής, @Nullable Bundle savedInstanceState) {κουμπί κουμπιού = (κουμπί) view.findViewById (R.id.button); button.setOnClickListener (νέο View.OnClickListener () {@Override public void onClick (Προβολή v) {NavController navController = Navigation.findNavController (getActivity (), R.id.my_nav_host_fragment), navController.navigate (R.id.action_firstFragment_to_secondFragment). }}); }}

Στη συνέχεια, ανοίξτε το MainActivity και προσθέστε τα εξής:

  • NavigationView.OnNavigationItemSelectedListener: Ένας ακροατής για το χειρισμό συμβάντων σε στοιχεία πλοήγησης
  • SecondFragment.OnFragmentInteractionListener: Μια διεπαφή που δημιουργήθηκε όταν δημιουργήσατε το SecondFragment μέσω του Επεξεργαστή πλοήγησης

Η MainActivity πρέπει επίσης να εφαρμόσει τη μέθοδο onFragmentInteraction (), η οποία επιτρέπει την επικοινωνία μεταξύ του θραύσματος και της Δραστηριότητας.

εισαγωγή καιroid.support.v7.app.AppCompatActivity; εισαγωγή android.os.Bundle; εισαγωγή καιroid.net.Uri; εισαγωγή καιroid.view.MenuItem; εισαγωγή καιroid.support.design.widget.NavigationView; εισαγωγή καιroid.support.annotation.NonNull; η δημόσια κλάση MainActivity επεκτείνεται AppCompatActivity εφαρμόζει NavigationView.OnNavigationItemSelectedListener, SecondFragment.OnFragmentInteractionListener {@Override προστατεύεται void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); } @Override δημόσια boolean onNavigationItemSelected (@NonNull Στοιχείο MenuItem) {return false; } @Override δημόσιο κενό onFragmentInteraction (Uri uri) {}}

Προσθήκη περισσότερης πλοήγησης

Για να εφαρμόσουμε την υπόλοιπη πλοήγηση της εφαρμογής μας, πρέπει απλώς να αντιγράψουμε / επικολλήσουμε το μπλοκ onViewCreated και να κάνουμε μερικές τροποποιήσεις, έτσι ώστε να αναφερθούμε στα σωστά widget κουμπιών και τις ενέργειες πλοήγησης.

Ανοίξτε το SecondFragment και προσθέστε τα εξής:

@Override public void onViewCreated (@NonNull Προβολή προβολής, @Nullable Bundle savedInstanceState) {Κουμπί κουμπιού = (Κουμπί) view.findViewById (R.id.button2); button.setOnClickListener (νέο View.OnClickListener () {@Override public void onClick (Προβολή v) {NavController navController = Navigation.findNavController (getActivity (), R.id.my_nav_host_fragment); navController.navigate (R.id.action_secondFragment_to_thirdFragment); }}); }}

Στη συνέχεια, ενημερώστε το block onViewCreated του ThirdFragment:

@Override public void onViewCreated (@NonNull προβολή προβολής, @Nullable Bundle savedInstanceState) {κουμπί κουμπιού = (κουμπί) view.findViewById (R.id.button3); button.setOnClickListener (νέο View.OnClickListener () {@Override public void onClick (Προβολή v) {NavController navController = Navigation.findNavController (getActivity (), R.id.my_nav_host_fragment); navController.navigate (R.id.action_thirdFragment_to_firstFragment); }}); }}

Τέλος, μην ξεχάσετε να προσθέσετε το interface ThirdFragment.OnFragmentInteractionListener στο MainActivity σας:

δημόσια class MainActivity επεκτείνει AppCompatActivity εφαρμόζει NavigationView.OnNavigationItemSelectedListener, SecondFragment.OnFragmentInteractionListener, ThirdFragment.OnFragmentInteractionListener {

Εκτελέστε αυτό το έργο στη συσκευή σας Android ή στην Εικονική συσκευή Android (AVD) και δοκιμάστε την πλοήγηση. Θα πρέπει να μπορείτε να πλοηγηθείτε μεταξύ των τριών θραυσμάτων κάνοντας κλικ στα διάφορα κουμπιά.

Δημιουργία κινούμενων εικόνων προσαρμοσμένης μετάβασης

Σε αυτό το σημείο, ο χρήστης μπορεί να μετακινηθεί γύρω από την εφαρμογή σας, αλλά η μετάβαση μεταξύ κάθε θραύσματος είναι αρκετά απότομη. Σε αυτήν την τελική ενότητα, θα χρησιμοποιήσουμε το στοιχείο πλοήγησης για να προσθέσουμε μια διαφορετική κίνηση σε κάθε μετάβαση, έτσι ώστε να συμβεί πιο ομαλά.

Κάθε κινούμενη εικόνα που θέλετε να χρησιμοποιήσετε πρέπει να οριστεί στο δικό της αρχείο πόρων κίνησης, μέσα σε ένα "res / anim" κατάλογο. Εάν το έργο σας δεν περιέχει ήδη έναν κατάλογο "res / anim", θα πρέπει να δημιουργήσετε ένα:

  • Κάντε κλικ στο εικονίδιο ελέγχου "κλικ" στον φάκελο "res" του έργου σας και επιλέξτε "Νέα> Κατάλογος πόρων του Android".
  • Δώστε στον κατάλογο αυτό το όνομα "anim".
  • Ανοίξτε το αναπτυσσόμενο μενού "Τύπος πόρων" και επιλέξτε "anim."
  • Κάντε κλικ στο κουμπί "OK".

Ας ξεκινήσουμε καθορίζοντας μια κινούμενη εικόνα:

  • Ελέγξτε-κάντε κλικ στον κατάλογο "res / anim" του έργου σας.
  • Επιλέξτε "Νέα> αρχείο πόρων κινουμένων σχεδίων".
  • Δώστε αυτό το αρχείο το όνομα "fade_out".
  • Ανοίξτε το αρχείο "fade_out" και προσθέστε τα εξής:

Επαναλάβετε τα παραπάνω βήματα για να δημιουργήσετε ένα δεύτερο αρχείο πόρων κινούμενης εικόνας, με το όνομα "slide_out_left", στη συνέχεια προσθέστε τα εξής:

Δημιουργήστε ένα τρίτο αρχείο με το όνομα "slide_out_right" και προσθέστε τα εξής:

Τώρα μπορείτε να αντιστοιχίσετε αυτές τις κινήσεις στις ενέργειές σας μέσω του Επεξεργαστή πλοήγησης.Για να αναπαραγάγετε την κινούμενη εικόνα με ξεθωριασμό κάθε φορά που ο χρήστης πλοηγείται από το FirstFragment στο SecondFragment:

  • Ανοίξτε το γράφημα πλοήγησης και βεβαιωθείτε ότι έχετε επιλέξει την καρτέλα "Σχεδίαση".
  • Κάντε κλικ για να επιλέξετε τη δράση που συνδέει το FirstFragment με το SecondFragment.
  • Στον πίνακα "Χαρακτηριστικά", κάντε κλικ για να αναπτύξετε την ενότητα "Μεταβάσεις". Από προεπιλογή, κάθε αναπτυσσόμενο μενού σε αυτήν την ενότητα πρέπει να οριστεί σε "Καμία".
  • Ανοίξτε το αναπτυσσόμενο μενού "Εισαγωγή", το οποίο ελέγχει την κινούμενη εικόνα που αναπαράγεται κάθε φορά που το SecondFragment μεταβαίνει στο επάνω μέρος της πίσω στοίβας. Επιλέξτε την κινούμενη εικόνα "fade_out".

Εάν μεταβείτε στην καρτέλα "Σχεδίαση", τότε θα δείτε ότι αυτή η κινούμενη εικόνα έχει προστεθεί στο "action_firstFragment_to_secondfragment".

Εκτελέστε το ενημερωμένο έργο στη συσκευή σας Android ή στο AVD. Τώρα θα πρέπει να συναντήσετε ένα φαινόμενο εξασθένισης όποτε πλοηγηθείτε από το FirstFragment στο SecondFragment.

Αν κοιτάξετε ξανά τον πίνακα "Χαρακτηριστικά", θα δείτε ότι το "Enter" δεν είναι το μόνο μέρος της μετάβασης στο οποίο μπορείτε να εφαρμόσετε μια κινούμενη εικόνα. Μπορείτε επίσης να επιλέξετε από:

  • Εξοδος: Η κινούμενη εικόνα που παίζει όταν ένα κομμάτι εξέρχεται από τη στοίβα
  • Εισαγωγή πομπού: Η κινούμενη εικόνα που παίζει όταν ένα θραύσμα γεμίζει την κορυφή της στοίβας
  • Pop εξόδου: Η κινούμενη εικόνα που παίζει όταν ένα κομμάτι μεταβαίνει στο κάτω μέρος της στοίβας

Δοκιμάστε να δοκιμάσετε εφαρμόζοντας διαφορετικά κινούμενα σχέδια σε διαφορετικά μέρη των μεταβάσεων σας. Μπορείτε επίσης να κατεβάσετε το ολοκληρωμένο έργο από το GitHub.

Τυλίγοντας

Σε αυτό το άρθρο, εξετάσαμε πώς μπορείτε να χρησιμοποιήσετε το στοιχείο Αρχιτεκτονική πλοήγησης για να δημιουργήσετε μια εφαρμογή με μία δραστηριότητα, πολλαπλών τμημάτων, που θα συμπληρώνεται με προσαρμοσμένες κινούμενες κινήσεις. Έχει το στοιχείο πλοήγησης να σας πείσει να μεταφέρετε τα έργα σας σε αυτό το είδος δομής εφαρμογής; Ενημερώστε μας στα σχόλια παρακάτω!

Είτε είστε blogger, κοινωνικός μέσων ενημέρωσης ή επιχειρηματίας, γοητευτικό οπτικό περιεχόμενο είναι ένα κλειδί για την επιτυχία. Εάν αντιμετωπίζετε προβλήματα με το να δημιουργείτε μόνοι σας, η σημε...

Εάν έχετε χρησιμοποιήσει ποτέ έναν από τους πιο πρόσφατους ασύρματους ελεγκτές Xbox, θα νιώσετε σαν στο σπίτι με το tratu Duo. Το gamepad έχει μια ευρεία, στιβαρή, εργονομική αίσθηση. Θεωρώ ότι αυτό ε...

Για Σενα