Posted by Murat Yener

It’s a wrap!! We’ve simply completed the second collection of Navigation on MAD Skills. In this collection, we re-visited Chet’s DonutTracker app and added an necessary lacking function: the flexibility to trace espresso.

With new performance comes new obligations. While we added espresso monitoring, we additionally improved the navigation expertise, applied conditional navigation, modularized the app and eventually discovered what’s altering with a number of again stack assist.

Episode 1: NavigationUI

As new locations have been added to the app,we used NavigationUI to supply a greater navigation UI expertise. NavigationUI helped us robotically combine NavigationView and BacksideNavigationView with the prevailing menu ids for locations. You can try the video linked under or should you choose learn the article right here.

Episode 2: Conditional Navigation

We added espresso monitoring performance within the first episode however irrespective of whether or not customers disable or allow the espresso tracker, they may nonetheless navigate to the CoffeeListing fragment. In this episode, we fastened that by including conditional navigation and directing our customers to choose once they launch the app for the primary time.

You can discover the identical content material in article type right here.

Episode 3: Nested Graphs and Include

In the third episode, we took a step again and arranged the navigation graph through the use of nested graphs and utilizing the embody tag to import different graphs. While protecting our venture extra organized, this additionally allowed us to modularize the app and see how navigation works with modules. Check out the article or the video under.

Episode 4: Feature Modules

In the fourth episode, we took the app a step additional and transformed the espresso module to a function module. With this transformation, the espresso monitoring function will solely be downloaded and put in for customers who enabled this function. Dynamic options allowed us to modularize the app to save lots of community and storage for the person. To be taught extra, try the video linked under or should you choose learn the article right here.

Episode 5: Multiple Back Stacks

In this episode, we lined a extremely requested function, a number of again stack assist for Navigation. To assist a number of again stacks, all it’s worthwhile to do is to replace your navigation and fragment dependencies. You can observe a number of again stack conduct with NavigationView and BacksideNavigationView immediately with none code change!

You may discover the identical content material in article type right here.

Episode 6: Live Q&A

Finally, we wrapped up the second collection of Navigation with a stay Q&A session the place we answered your questions. If you missed the Q&A, make certain to take a look at the recording under.

Sample Apps

Donut and Coffee Tracker

The software used for the primary 4 episodes within the collection is the DonutTracker app which Chet constructed throughout the first Navigation collection on MAD Skills. You can comply with the progress in every episode by testing the starter and answer code from this repo.

Navigation Advanced Sample

This venture is used to show Multiple again stack assist in Navigation. Before Navigation model 2.4.0-alpha01, this venture provided NavigationExtensions to imitate the a number of again stack conduct. You can try the answer code with up to date dependencies and NavigationExtensions eliminated on this repo.

This brings an finish to the second Navigation collection however the MAD collection will proceed with one other thrilling subject! Make positive you keep tuned for extra Android MADness!