Android Jetpack: manage UI navigation with Navigation Controller (Google I/O ’18)

Google+ Pinterest LinkedIn Tumblr +



The Navigation Architecture Component provides a framework for building in-app navigation. This session will discuss how to use the Navigation Editor in Android Studio, XML or the Java API to define your navigation graph, and how that simplifies navigating around your app and handling deep linking.

Watch more Android sessions from I/O ’18 here →
See all the sessions from Google I/O ’18 here →

Subscribe to the Android Developers channel →

#io18

Share.

About Author

25 Comments

  1. I'd like to implement an app same Youtube, when users comback home tab I'd like to keep data which is loaded previously.
    Who can tell me any solution with Navigation?

  2. How do I handle CollapsingToolbarLayout for specific Fragment if I have Toolbar that is placed in the Activity?
    Do I hide the Activity's Toolbar and then handle Fragment's Toolbar separately? How will this affect the up navigation?

  3. Will there be a
    implementation 'android.arch.navigation:navigation-activity:1.0.0-alpha01'
    that fixes the up and back button handling for activities without the need to switch to this Fragment style?

  4. Okay so this explained some parts. But what about master-detail flows on tablets? How do I tell it whether I'm on a phone or tablet ui and where to load the fragment to? How would I modify the ActionBar Menu? What about Activities deeper in the hirarchy where I want an Up-arrow even on the topmost fragment to go up to another activity? So many things that are currently not explained anywhere, so we'll need to wait for blog posts and stackoverflow questions to pop up to fill all the blanks. Just like every io unfortunately. Things will be usable around the P release.

  5. Can a fragment in the navigation graph have multiple pop-to fragments? Can a navigation graph looks like a net?
    For example in the case of 06:17, what if an app has multiple entries to the user_profile? Or I'll need to create multiple separate paths?