Navigation Component - Android Studio Tutorial

  Рет қаралды 171,446

Stevdza-San

Stevdza-San

4 жыл бұрын

🏆 My Online Courses
⭐Discount Coupon: LAUNCH-STEVDZA-SAN
stevdza-san.com
🐱‍👤 Wanna become a member? Join!
/ @stevdzasan
📸 Instagram
/ stevdza_san
Navigation refers to the interactions that allow users to navigate across, into, and back out from the different pieces of content within your app. Android Jetpack's Navigation component helps you implement navigation, from simple button clicks to more complex patterns, such as app bars and the navigation drawer.
The Navigation component consists of three key parts that are described below:
* Navigation graph: An XML resource that contains all navigation-related information in one centralized location. This includes all of the individual content areas within your app, called destinations, as well as the possible paths that a user can take through your app.
* NavHost: An empty container that displays destinations from your navigation graph. The Navigation component contains a default NavHost implementation, NavHostFragment, that displays fragment destinations.
* NavController: An object that manages app navigation within a NavHost. The NavController orchestrates the swapping of destination content in the NavHost as users move throughout your app.
As you navigate through your app, you tell the NavController that you want to navigate either along a specific path in your navigation graph or directly to a specific destination. The NavController then shows the appropriate destination in the NavHost.

Пікірлер: 123
@dychak
@dychak 3 жыл бұрын
Man, I saw 2 official videos already and still didn't get what it is. Your video finally triggered my mind. I think the visual aid in your video helps a lot.
@yimingchu3176
@yimingchu3176 3 жыл бұрын
Fantastic video!! This is even better than the official docs and tutorial!! Respect
@XaeroDegreaz
@XaeroDegreaz 3 жыл бұрын
At about @8:33 when he starts typing out "view.textField1" that's because he has applied the "kotlin-android-extensions" plugin in the app's build.gradle. Looks like a Kotlin plugin that creates extension functions for Views so you dont have to "findViewById()" all of the time. I'm not sure if that was already covered in a previous video of yours, but maybe adding that to the description, or something, could eliminate a little bit of confusion :D Thanks for the video
@sidecharacter9375
@sidecharacter9375 3 жыл бұрын
YOU just SAVE MY LIFEE, thanks man.
@samuelmcmurray3502
@samuelmcmurray3502 3 жыл бұрын
thanks
@user-lq1te8xn5f
@user-lq1te8xn5f 3 жыл бұрын
thx. you help me a lot.
@user-tc3ml2jr8c
@user-tc3ml2jr8c 2 жыл бұрын
​@@user-lq1te8xn5f Also the java code for the: View view = inflater.inflate(R.layout.fragment_second, container, false); TextView textView = view.findViewById(R.id.textView2); textView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Navigation.findNavController(view).navigate(R.id.action_secondFragment_to_firstFragment); } }); return view;
@lucye7320
@lucye7320 4 жыл бұрын
Terrific walkthrough, thanks!
@softMediaWox
@softMediaWox 3 жыл бұрын
Simple and Plain. Thank you.
@rafaeldias8671
@rafaeldias8671 4 жыл бұрын
Muito bom o vídeo, muito bem explicado. Sensacional.
@gamessss_
@gamessss_ 3 жыл бұрын
I am doing a google course for the same topic and yours is heaps better! Thanks for this! Life saver
@r1sh149
@r1sh149 3 жыл бұрын
same i was doing from udacity
@sohamshinde1258
@sohamshinde1258 3 жыл бұрын
same here... despite being the maker of it they couldn't explain it 😢
@puiky
@puiky 2 жыл бұрын
yeah, easy to understand and better than Android official team documentary video
@radwl
@radwl 3 жыл бұрын
Such a good video! You explained every important feature very well.
@yonatan1myers
@yonatan1myers 2 жыл бұрын
The clearest and best tutorials on the internet! Man
@StevdzaSan
@StevdzaSan 2 жыл бұрын
Thanks! 💜
@Jaimecoder
@Jaimecoder 3 ай бұрын
Machaa Allah machaa Allah machaa Allah, Allah yberek fik doctora! Et bravo Mr le journaliste pour cette belle émission et votre compétence, Merciii
@GuitarreroDaniel
@GuitarreroDaniel 3 жыл бұрын
Incredible explanation, thanks for this! :)
@tommymagic869
@tommymagic869 3 жыл бұрын
Great tutorial! Thank you!
@abhinavsingh-zc2hk
@abhinavsingh-zc2hk 3 жыл бұрын
Thank you so much for this amazing playlist 👌
@sanuhara1375
@sanuhara1375 3 жыл бұрын
At last, I got it cleared from your video.. huge 👍 👍👍👍
@kaszabi9427
@kaszabi9427 3 жыл бұрын
you just made my day! thank you so much for this
@mayra_vgm9011
@mayra_vgm9011 3 жыл бұрын
i love you
@nagarajhegde3363
@nagarajhegde3363 5 ай бұрын
Good simple introduction. Thank you!
@muthami_duncan
@muthami_duncan 2 жыл бұрын
Very amazing tutorial. Very helpful.
@ngocanho4323
@ngocanho4323 3 жыл бұрын
good content, easy way to make watcher understand how to do. Ty so much
@Stan_Kniazev
@Stan_Kniazev Жыл бұрын
The best explanation I've ever seen
@sumitjindal1115
@sumitjindal1115 2 жыл бұрын
Thank you soo much man....please make these types of video more as it is very helpful for us.
@MangekyouGui
@MangekyouGui 3 жыл бұрын
Excelente vídeo! Ajudou muito!
@electrious_46
@electrious_46 2 жыл бұрын
Thanks a lot man, it really helped me 🙏
@raylyth8324
@raylyth8324 2 жыл бұрын
I love you man. Thanks for the video.
@techmarinar
@techmarinar 2 жыл бұрын
Thanx man this was very helpful ☺️
@liweijian
@liweijian 3 жыл бұрын
Great video, awesome thanks
@vaaronka
@vaaronka 3 жыл бұрын
Amazing video !
@rockychandu1444
@rockychandu1444 3 жыл бұрын
You are the best❤️
@DanilTsyban
@DanilTsyban 3 жыл бұрын
Thx for the lesson. It was easy to understand
@kiwi2793
@kiwi2793 2 жыл бұрын
arigato stevdza san!!
@godfredaddaiamoako3065
@godfredaddaiamoako3065 Жыл бұрын
i have read severals books, they couldnt explain simpler like you. i get so well now
@StevdzaSan
@StevdzaSan Жыл бұрын
Glad to hear that!
@elmarchantw
@elmarchantw 2 жыл бұрын
Even though it was in Kotlin language, it has been useful to me. Thanks :).
@fahadhabibjanjua
@fahadhabibjanjua 7 ай бұрын
simple and fun
@mariahsmith1589
@mariahsmith1589 4 жыл бұрын
Would be cool to have xml and design tabs open for those of us that prefer the xml
@TechAshlyn
@TechAshlyn 2 жыл бұрын
thank u so much
@peyvandjadidi4395
@peyvandjadidi4395 2 жыл бұрын
I just subscribed your channel because I've been searching for difference between data binding and view binding and I found yours useful. So I liked this video before I start it ❤️❤️❤️❤️❤️
@StevdzaSan
@StevdzaSan 2 жыл бұрын
Thank you 😊💜🙏
@nivethan1897
@nivethan1897 3 жыл бұрын
Thank U For this great video.....
@niko3359
@niko3359 3 жыл бұрын
Could you also please add the java code to your description. That really helped in your last video. Thank you for these amazing tutorials!!!
@vatsaljain3207
@vatsaljain3207 2 жыл бұрын
Thank you so much you made my dayyyyy
@StevdzaSan
@StevdzaSan 2 жыл бұрын
Happy to hear that 😁👊
@kevinsolanki6232
@kevinsolanki6232 2 жыл бұрын
add this in gradle(module) dependencies: apply plugin : "kotlin-android" apply plugin : "kotlin-android-extensions"
@afaquejaya2524
@afaquejaya2524 2 жыл бұрын
Thanks
@mounirelomri9681
@mounirelomri9681 2 жыл бұрын
Really clear tutorial, thanks
@StevdzaSan
@StevdzaSan 2 жыл бұрын
Glad to help! 🙌
@mehrob781
@mehrob781 2 жыл бұрын
best content
@telloborneo3635
@telloborneo3635 3 жыл бұрын
great videos !!, Please make video about handling the backstack, its so difficult for me.., this is my cases, here the flow of navigation graph : 1. A-B-C 2. D-B-F The question is, how the B fragment knows, which fragment that called them, from A or D, i mean how to handle onBackpress, im glad if u have the solution, thanks dude!
@chenchiaho
@chenchiaho 3 жыл бұрын
cute background music
@NamNguyen-ql6ov
@NamNguyen-ql6ov 2 жыл бұрын
great video, tks very muchmuch
@StevdzaSan
@StevdzaSan 2 жыл бұрын
You're welcome 🙏
@pankajwandre5961
@pankajwandre5961 4 жыл бұрын
Hello.. Great explanation.. Please Can you make video on searchview in recycler view.. Thankyou.. Love from India.. And you are great..
@abdullahimusa3153
@abdullahimusa3153 2 жыл бұрын
Stevdza-San saving me once again
@StevdzaSan
@StevdzaSan 2 жыл бұрын
Anytime broah 🦸‍♂️🙌
@h.r.60
@h.r.60 4 жыл бұрын
Keep up the great vids 👍
@hassanammer7854
@hassanammer7854 2 жыл бұрын
great Work 🤩💙
@StevdzaSan
@StevdzaSan 2 жыл бұрын
Thanks! 🙌
@pythonsamurai
@pythonsamurai 3 жыл бұрын
Своих всегда можно узнать по акценту.
@MxMayers
@MxMayers 3 жыл бұрын
жаль что не по "нашему" этот наш "свой" рассказывает
@denzmc
@denzmc 3 жыл бұрын
он поляк
@_Smai1e_
@_Smai1e_ 3 жыл бұрын
@@denzmc серб
@clerdsonjuca3823
@clerdsonjuca3823 3 жыл бұрын
great
@ezstudio3d
@ezstudio3d 3 жыл бұрын
how can you change the fragment from the activity, I ask because I want one specific fragment to show some settings when the user select a settings menu?
@unofficialboy_
@unofficialboy_ 2 жыл бұрын
I love you
@prasanthmanimaran5158
@prasanthmanimaran5158 3 жыл бұрын
Sir, if you don't mind, can I ask you something? Let say an app needs 3-4 different user logins (teacher, students, etc). How would you approach this issue, sir? Thank you so much
@MoXyiD
@MoXyiD 4 жыл бұрын
Hey! Great videos! I was wondering if there will be a tutorial on how to navigate from a single fragment using numerous buttons which lead to more than one other fragment. like 1 fragment leads to 2+ others.
@codexrat
@codexrat 3 жыл бұрын
Are you looking to inflate 2 fragments simultaneously side by side? If that is the case then try to make a fragment with 2 child fragments(which you want to inflate) and make the parent fragment in the nav graph!
@DiegoTube85
@DiegoTube85 2 жыл бұрын
should the findNavController method be better called in the onViewCreated method?
@kovanodevelop
@kovanodevelop 3 жыл бұрын
Падажжи. Зависимости нужные в градл сами цепляются, нужно только разрешить? А мы копировали из техдокументации - карго да.
@KL-es9bt
@KL-es9bt 3 жыл бұрын
How to make those fragments take up status bar as well?
@kickhuggy
@kickhuggy 3 жыл бұрын
I can't figure out how to do this with fabs. I'm working across fragments and activities. Using the fab to navigate between activities, can't find any examples of this though
@randomthings77
@randomthings77 3 жыл бұрын
Can we navigate through multiple activities by using bottom navigation bar?
@mahirbird9071
@mahirbird9071 4 жыл бұрын
Hi sir.. I downloaded Android Studio 3.6.1. But I found a problem, there is no support repository in SDK tools! Besides, there is no android drawable importer in the Plugins. I hope you tell me about the cause and how to overcome this problem. I googled the issues and search many videos in KZfaq but that was useless. Thanks
@francisconeto9081
@francisconeto9081 3 жыл бұрын
I have to put someting on my main activity?
@javad0470
@javad0470 3 жыл бұрын
when we navigate to another fragment ، the data in fragment is lost , what we can do ?
@workwithray2569
@workwithray2569 2 жыл бұрын
how do you make this work with binding?
@pronavsandhu
@pronavsandhu 3 жыл бұрын
Hi, but How to send data from one Fragment to another Fragment in this way?
@harshpatel-bt5wr
@harshpatel-bt5wr 3 жыл бұрын
how can we handle multiple navigation graphs in app ?
@lawalhayde3933
@lawalhayde3933 3 жыл бұрын
Good day @ Stevdza-San. The line " view.textView.setOnClickListener {Navigation.findNavController(view).navigate(R.id.navigate_to_secondfragment)}" is not referencing or calling the "textView" id from the first fragment. Instead android studio is showing Unresolved reference:textView :( the same error happens too in the second fragment with the second fragments id(textView2) :(
@StevdzaSan
@StevdzaSan 3 жыл бұрын
Kotlinx.synthetic is now deprecated, migrate to View Binding instead. I've made a video about it: kzfaq.info/get/bejne/g76KrZdkncendIE.html
@lawalhayde3933
@lawalhayde3933 3 жыл бұрын
@@StevdzaSan Thank you 😖 I retried and watched the video multiple times, since I thought I was doing something wrong. Thanks a bunch
@antomicawad6377
@antomicawad6377 4 жыл бұрын
Interesting topic , is it new feature in the latest upd?
@StevdzaSan
@StevdzaSan 4 жыл бұрын
That's correct
@antomicawad6377
@antomicawad6377 4 жыл бұрын
@@StevdzaSan thank you for covering it
@user-ip9ns8lb9i
@user-ip9ns8lb9i 9 ай бұрын
I have a doubt that if I press back button when I was in first fragment it move to second fragment instead back button has to pause the activity
@GAGANDEEP901
@GAGANDEEP901 2 жыл бұрын
how to do the same with back button?
@luuchoo93
@luuchoo93 Жыл бұрын
I've created a navgraph but the "directions" class from Fragment 1 to Fragment 2 doesn't generate automatically. What could be wrong?
@hannanshaikh2616
@hannanshaikh2616 3 жыл бұрын
How to pass data between fragments in Navigation Components
@theai06
@theai06 Жыл бұрын
How to open any fragment from any other activity not the host activity
@ShubhamGupta-ut4vv
@ShubhamGupta-ut4vv 3 жыл бұрын
onNavifationUp() is not working in Navigation Drawer Activity.
@BehruzbekOtayev
@BehruzbekOtayev 3 жыл бұрын
at 8:34, view.textView1.setOnClickListener is giving me an error. I cannot access the textView object from view. What should I do? Do I have to configure something in the build.gradle file?
@StevdzaSan
@StevdzaSan 3 жыл бұрын
View Binding
@BehruzbekOtayev
@BehruzbekOtayev 3 жыл бұрын
@@StevdzaSan Thank you. I have configured viewBinding to true in my build.gradle file. what I know is I should create a lateint val binding, and use that binding object to call all my views with IDs. however, you have not declared any binding object in your FirstFragment.kt file. How are you calling it from a view object? Or first do I have to change something in my MainActivity.kt file, and then does FirstFragment.kt import my binding object from MainActivity.kt?
@StevdzaSan
@StevdzaSan 3 жыл бұрын
@@BehruzbekOtayev Because now kotlinx.synthetic is deprecated.
@BehruzbekOtayev
@BehruzbekOtayev 3 жыл бұрын
@@StevdzaSan thank you. I will figure it out.
@quentinrufin4025
@quentinrufin4025 3 жыл бұрын
My app display the content of activity_main.xml instead of the first fragment XML. How do I change it?
@quentinrufin4025
@quentinrufin4025 3 жыл бұрын
ok I forgot the NavHostFragment in the activity_main.xml.
@regdenbhutia8984
@regdenbhutia8984 3 жыл бұрын
why my 1 activity is not showing
@BehruzbekOtayev
@BehruzbekOtayev 3 жыл бұрын
Your Google Play Store link does not work... What happened?
@laleyuniversal
@laleyuniversal 3 жыл бұрын
I try to do this with drawer and doesn't work, somebody knows something? :C
@ChinhNguyen-eg5km
@ChinhNguyen-eg5km 4 жыл бұрын
sr sir, can u help me with saving state fragment when navigating between fragment in Navigation component
@StevdzaSan
@StevdzaSan 4 жыл бұрын
I will create a tutorial about that in the future.
@ChinhNguyen-eg5km
@ChinhNguyen-eg5km 4 жыл бұрын
@@StevdzaSan thanks sir
@shinmasterx
@shinmasterx 2 жыл бұрын
doesnt let me add the dependancies automatically :( just says it cant find them....
@pyaesonehan19
@pyaesonehan19 2 ай бұрын
@bharathkalyans
@bharathkalyans 3 жыл бұрын
Hey ,I am not getting option of textView, like view.textView1 .I am not getting it!What should I do??
@StevdzaSan
@StevdzaSan 3 жыл бұрын
kzfaq.info/get/bejne/g76KrZdkncendIE.html
@mrshow7462
@mrshow7462 Жыл бұрын
Неплохо
@aayushsarikhada6
@aayushsarikhada6 2 жыл бұрын
I am actually new to Android dev, I have a question. When to use a activity and when to use a fragment??? Thanks in advance 👍👍(anyone can ans)
@StevdzaSan
@StevdzaSan 2 жыл бұрын
These days you would use multiple fragments and single activity only.
@zacharycaffey5464
@zacharycaffey5464 Жыл бұрын
would be nice if half this stuff actually worked lol
@sumansahu1005
@sumansahu1005 2 жыл бұрын
You just speak what's going on, That is a hard to understand. it would be really great if you can add what is the intent and how in each step we can achieve it. Thank you
@emmanuelarcamo377
@emmanuelarcamo377 Жыл бұрын
Can you please don't speed up your video.
@vaishnaviaalewad4888
@vaishnaviaalewad4888 2 жыл бұрын
I am getting error in the line : view.button1.setOnClickListener{Navigation.findNavController(view).navigate(R.id.navigateToFirstFragment)} Error : unresolved reference : Navigation
@minds_clear_02.23_
@minds_clear_02.23_ 3 жыл бұрын
The following options can be used as viable work arounds: 1. Retrieve the navController directly from the NavHostFragment. val navHostFragment = supportFragmentManager.findFragmentById(R.id.my_nav_host_fragment) as NavHostFragment val navController = navHostFragment.navController 2. Post the call to the findNavController method on a handler and execute all actions that need it after that post is complete. 3. Continue to use the fragment tag () to inflate the NavHostFragment issuetracker.google.com/issues/142847973
Safe Args with Navigation Component - Android Studio Tutorial
5:45
Navigation в Андроид | Android Studio & Kotlin
26:48
Does size matter? BEACH EDITION
00:32
Mini Katana
Рет қаралды 17 МЛН
Became invisible for one day!  #funny #wednesday #memes
00:25
Watch Me
Рет қаралды 57 МЛН
Can You Draw A PERFECTLY Dotted Line?
00:55
Stokes Twins
Рет қаралды 112 МЛН
КАРМАНЧИК 2 СЕЗОН 7 СЕРИЯ ФИНАЛ
21:37
Inter Production
Рет қаралды 545 М.
Full Guide to Nested Navigation Graphs in Jetpack Compose
12:01
Philipp Lackner
Рет қаралды 58 М.
ViewModel Explained - Android Architecture Component | Tutorial
8:27
Most overpowered way to build mobile apps?
8:33
Beyond Fireship
Рет қаралды 737 М.
Navigation Component | Android Jetpack | Android
17:26
Mafia Codes
Рет қаралды 49 М.
Aider and Claude 3.5: Develop a Full-stack App Without Writing ANY Code!
16:58
Coding the Future With AI
Рет қаралды 18 М.
Everything you need to know about Kotlin 2.0 🟣
11:05
Stevdza-San
Рет қаралды 59 М.
Does size matter? BEACH EDITION
00:32
Mini Katana
Рет қаралды 17 МЛН