📱DOPE Introduction Screens • Flutter Tutorial ♡
Вставка
- Опубліковано 6 лют 2025
- 🔥📱 My Habit Tracker: ritualz.app
💳📱 My Expense Tracker: dollatracker.app
🥷🏽 FOLLOW ME
Patreon: / mitchkoko
Instagram: / createdbykoko
Twitter: / createdbykoko
TikTok: / createdbykoko
🥷🏽 FOLLOW ME
Patreon: www.patreon.com/mitchkoko/
Instagram: instagram.com/createdbykoko/
Twitter: twitter.com/createdbykoko/
TikTok: www.tiktok.com/@createdbykoko/
What emulator are you using?
I would really appreciate if you also created full applications with state management and backends too this would be help nice, your really good in explaining love your content 👌❤️❤️❤️
you are just making things a lot easier, keep it up !
this is my best educator channel
i admire your work dude ,that's great everything you did it perfectly as it supposed to be done ,greatings from Malawi
Dot indicators video was just straight to the point, thanks
amazing work, thanks for putting out these high quality videos!
My pleasure glad it helps u
Excellent work. Amazing!
You are very talented. Do you mind making videos on how to access phone permissions. Like fingerprint, file media, camera, microphone, contacts and so on. That would be really helpful. Thank you!
Wow... I found your channel a few days ago and I must say I'm blown away... I would like to request if you can make a video on how to only run the intro pages one time in the application. I am very new to flutter.
very good job man
দারুন। এই টিউটোরিয়াল দেখে দেখে আমি বাস্তবায়ন করেছি।🥰
Yo one thing instead of using navigatior push use pushReplacement to completely dispose the intro screen from the stack so people won't see it when the want to exit the app and one more thing it's absolutely necessary to dispose the page controller in the dispose method of the stateful widget to avoid memory leaks
Ohh nice.😁
Is there a way to display the intro screen only once when user opens the app for the first time? n later it opens the home screen on subsequent opening of the app?
@@unlockedplucky209 absolutely yes. You can use shared preferences to store a bool like introShown when the user launches the app and only show the intro screen if that value is not set
@@unlockedplucky209You could use shared prefrences, or firebase for this. depends on the context you're doing it
just love the way you teach
you are a great flutter person
yah legend 😊👍✌️
Thank you so much 😀
Hey mitch! Im a big fan. Keep rocking king!
thanks for the comment bro! :D
watched the page view video, super simple to understand, thanks Koko
i really enjoyed this tutorial
Thanks bro, also, I would store in shared preferences or with Hive package the fact that the introduction screens have already been viewed, so they will appear only the during the first launch of the app
This is a great point! Thank you
How to do that bro
can you help me out a bit to stop relaunching the intro page every time I open my app?
@@unlockedplucky209 just use the shared_preferencies package and create a pair of key value with key of introduction_seen. By default it’s false and when the introduction has been seen, set it as true.
Before displaying the introduction, check if the introduction_seen value in shared_preferencies is set to false 👍
i haven’t tried yet but instead of creating a bool to track can we check the index throught the controller for condition of next and done.In this way we dont need setstate i think .
👍 Very useful video tutorial, thank you Mitch. 😊
No problem glad i could help ❤️
@@createdbykoko Hey Mitch, I was just interviewed by some experts from a tech company from Kolkata, India for a Flutter app developer position. After the first round technical interview I was shortlisted for the second round technical interview and I just came after attending the interview. However, I'm new to Flutter development but I believe that I will get the job. I think Flutter is really easy and you are helping me alot! Thank you so much Mitch! 😊
That was dope af
Love your videos!❤
it's so awesome 🤩
You're too nice :)
thanks for your work, what would i have to do if i didnt want the user to be able to go to the introduction pages after seeing them for the first time?
shared_preferences pub.dev/packages/shared_preferences Sorry I should've included that in the tutorial!
@ don’t worry, thanks for your response. your work is amazing and i’m learning flutter thx to you. is there a tutorial on how to do a calorie counter on flutter?
Keep going
💜💜💜💜
love it!!!
👨🏽💻❤️❤️❤️ glad u like it
I have a model I need to populate. It has way too many information and want to display in multiple steps. I was using pageview to pass around the model and get the information, but inputs are getting re-created once I use setstate on the main page causing all blank information. I need to know and update which page I need to change the next button to save button but setstate is not helping. What would be the best approach to achieve this?
Does it have to be myapp or I can customize it the way I want it?❤
Thanks , you helped me 💙
Omg! Your content is told. Greetings from Nicaragua!
Great ...this tutorial so clear and easy to follow ...thank you very much
Smooot video 🖤🖤🖤🖤
explanation is very clear ..thanks for sharing these videos
My pleasure! Glad it helped ❤️
Best 💙
thank you very much.
I have a question please:
how can I skip the introduction screens if I am old user?
so for and old user we skip directly to login page for exemple.
Hey mitch, why did we use alignment property of container to place the smooth dot indicator, we could have used positioned widget right ?
Thank you so much for your help brother
Hi Koko virtual code mentor, you missed adding that smooth page indicator won't work without importing packages, but great video. Thanks
Create a video about shared preference with this Introduction Screen
Very Good :)
it´s poss change the scroll view in each page with only one pageview? example page1 to page2 horizontal, page2 to page3 vertical,
well done bro
Is it possible to share information between screens ? Let's say I'd like to register something that requires 3 or mores steps and each page the user would provide individual info for that specific step. Then on the last page the request would be sent to API. Is it possible to share information (data) between the screens ?
Can you please create a course for flutter UI?
Thank you, nice tutorial :) But this intro screens opens everytime when I re-run app. How can I prevent it? It should open only for the very first time, right?
did you get the answer?
dispose the widget and use navigator replace
Navigator operation requested with a context that does not include a Navigator.
Thank you very much
💯💯
Hey i wanna ask something, why after we go to the homepage and press the back button it going back to the onboarding screen again?
What software or site do you use to make the presentation video of the app ?
Which emulator do you use?
Thanks
all goooddss
You are awesome
how can I get animated gif image like this?
Will this page be shown only at first run?
hey what about skipping introScreen for existing user ?
Shared preferences or hive will help with that!
honestly ur channel is the best very simple to learn with u @@createdbykoko 💜💜
Where can I find the code?
unable to use smooth page indicator
❤
💘
How ican run vscode with emulator android??
How do you skip the intro screens and go straight to Home after the user went through this after install?
Create a bool variable and save it in a json file.
Then read that file at the start of app to check whether the user has seen the onboarding.
Please also add complete flutter course for beginners 😏
I have something in the works for that 👨🏽💻 coming real soon ✌🏾
@@createdbykoko i cant wait for it 😲
@@createdbykoko yey :)
waiting or it
How can I only make these show once?? Please make new tutorial.
State and get_storage one would imagine
Or only show it after sign up / first sign in
Is this Java or kotlin?
Neither, this is flutter
awesome..mm
i have lot of errors please help
What does the error say? I can help
@@createdbykoko im talking about the red lines under the codes im a begginer btw
@@zyltho yup that’s fine. If you hover your mouse over the red squiggle, it will tell you what the error is
@@createdbykoko ive just wrote those yet
@@createdbykoko Hi I was struggling to understand the code to make it work and I did thank God he helped me, you also did but nothing shows up I have no errors or anything nothing shows up
heres onboarding_screen.dart file
import 'package:flutter/material.dart';
import 'package:qranic/intro_screens/intro_page_1.dart';
import 'package:qranic/intro_screens/intro_page_2.dart';
import 'package:qranic/intro_screens/intro_page_3.dart';
import 'package:smooth_page_indicator/smooth_page_indicator.dart';
class Onboarding_screen extends StatefulWidget {
const Onboarding_screen({Key? key}) : super(key: key);
@override
// ignore: library_private_types_in_public_api
_OnBoardingScreenState createState() => _OnBoardingScreenState();
}
class _OnBoardingScreenState extends State {
//controller to keep track which page we are on
PageController _controller = PageController();
@override
Widget build(BuildContext context) {
return Scaffold(
body: Stack(
children: [
PageView(
controller: _controller,
children: [
Intropage1()
,Intropage2()
,Intropage3()
]
),
// dot indicator
Container(
alignment: Alignment(0, 0.75),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
// skip
GestureDetector(
onTap: () {
_controller.jumpToPage(2);
},
child: Text('skip')),
// dot indicator
SmoothPageIndicator(controller: _controller, count: 3),
//next or done
GestureDetector(
onTap: () {
_controller.nextPage(duration: Duration(milliseconds: 500), curve: Curves.easeIn);
},
child: Text('next'),
),
],
)),
],
),
);
}
}
heres main.dart
import 'package:flutter/material.dart';
// ignore: unused_import
import 'onboarding_screen.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return const MaterialApp(
debugShowCheckedModeBanner: false,
);
}
}
but import 'onboarding_screen.dart'; is unused
In the skip button use this => _controller.animateToPage(
2,
duration: const Duration(milliseconds: 500),
curve: Curves.easeIn,
);