About
About Us
Help
Privacy Policy
Terms of Service
LearnDesk
Learn
Academics
Business
Creative
Health and Fitness
Lifestyle
Personal Development
Software
Topics
Admissions
Engineering
Hardware
Hospitality
Humanities
Chinese
Languages
Maths
Pharma
View All Topics
Topics
Accounting
Advertising
Analysis
Analytics
Business Communication
eCommerce
Entrepreneurship
Finance
Finance - India
Freelancing
View All Topics
Topics
Arts & Crafts
Audio Editing
Audio Production
Dance
Design
Film Production
Music
Photography
Video Production
Writing
View All Topics
Topics
Dieting
Fitness
Food Safety
Games
Medical
Medical Professionals
Meditation
Mental Health
Pregnancy
Safety & First Aid
View All Topics
Topics
Beauty & Makeup
Food
Fashion
Gaming
Home Improvement
Parenting
Pet Care & Training
Relationships
Sustainable Living
View All Topics
Topics
Career Development
Learning
Religion and Spirituality
Self-Improvement
View All Topics
Topics
Accounting
Amazon Web Services
App Development
Continuous Integration
Backup Software
Business Automation
Computational Fluid Dynamics
Business Intelligence
Computer Aided Design (CAD)
View All Topics
Teach
Teach Online
Schedule
Items
Billing
Users
Marketing
Analytics
Settings
Change School
Account
Log In
Sign Up
Learn Flutter and Dart to Build iOS and Android Apps
Introduction
Introduction
Preview
What is Flutter?
Understanding the Flutter Architecture
How Flutter and Dart Code Gets Compiled to Native Apps
Understanding Flutter Versions
Flutter macOS Setup
macOS Development Environment
Flutter Windows Setup
Windows Development Environment
Flutter and Material Design
Flutter Alternatives
Course Outline
How to Get the Most Out of the Course?
Flutter Basics [Quiz APP]
Module Introduction
Creating a New Project
An Overview of the Generated Files and Folders
Analyzing the Default App
Dart Basics
More Dart Basics
Building an App From Scratch
Running the App on an Emulator
Class Constructors and Named Arguments
First Summary and Additional Syntax
Building a Widget Tree
Visible (Input / Output) and Invisible (Layout / Control) Widgets
Adding Layout Widgets
Connecting Functions and Buttons
Anonymous Functions
Updating Widget Data (Or: Using StatelessWidget Incorrectly)
Updating Correctly With Stateful Widgets
A Brief Look Under the Hood
Using Private Properties
Creating a New, Custom Widget
First Styling and Layouting Steps
Enums and Multiple Constructors
Official Docs and the Widget Catalog
Passing Callback Functions Around
Introducing Maps
Mapping Lists to Widgets
Final vs Const
Introducing "if" Statements
[DART Deep Dive] More on "if" Statements
[DART Deep Dive] The "null" Value
Outputting Widgets Conditionally
Splitting the App Into Widgets
Calculating a Total Score
Getters and "else-if"
Resetting the Quiz
Wrap Up
Running Apps on Different Devices and Debugging Apps
Module Introduction
Running the App on a Real Android Device
Running the App on an iOS Emulator
Running the App on a Real iOS Device
Working With the Emulators / Using the Emulators
Understanding Error Messages and Fixing Errors
Using the Debugger
Getting Started With the Dart DevTools
Understanding the Repaint Rainbow
Wrapping up the Dart DevTools
Widgets, Styling, Adding Logic - Building a Real App Personal Expenses APP]
Module Introduction
An Overview of the Core Flutter Widgets
Planning the App
Combining Widgets
Understanding Column Alignment
Not a Widget: Adding a Transaction Model and Transaction Data
Mapping Data Into Widgets
Building a Custom List Item
Styling a Container
Styling Text
More Styling
Containers vs Columns vs Rows
Using String Interpolation
Installing External Packages and Formatting Dates
Adding Text Input Widgets (TextField)
Fetching User Input
Splitting the App Into Widgets
Connecting Widgets and Managing Data / State
Adding User Transactions to the List
Making the List Scrollable
Working With ListViews
Further Input and Output Styling and Configuration
Adding AppBar Buttons and Floating Action Buttons
Showing a Modal Bottom Sheet
Improving and Styling the Modal Bottom Sheet
Configuring and Using Themes
Custom Fonts and Working With Text Themes
Adding Images to the App
Planning the Chart Widget
Looping Through Lists
Deriving Recent Transactions
Creating Bars for our Chart
Populating the Chart With Values
Finishing the Chart Bars
Flexible and Expanded: Deep Dive
Adding a ListTile Widget
Improving the Overall Chart
Widgets and Configuring Widgets - Summary / Overview
Getting Started With Date Selection
Showing a DatePicker
Adding Transactions With a Date
Deleting Transactions and Using IconButtons
Final Polishing
Wrap Up
Responsive and Adaptive User Interfaces and Apps
Module Introduction
What Does "Responsive" and "Adaptive" Mean?
Examples: Where we Could Improve the App
Calculating Sizes Dynamically
Using the LayoutBuilder Widget
Controlling the Device Orientation
Rendering Alternative Landscape Content – 1
Finishing Landscape Mode
Showing Different Content Based on Device Orientation
Respecting the Softkeyboard Insets
Using the Device Size in Conditions
Managing the MediaQuery Object
Checking the Device Platform
Using Cupertino (iOS) Widgets
Using the SafeArea
More Cupertino Styles
Using Cupertino Buttons
Creating Custom Adaptive Widgets
Wrap Up
Widget and Flutter Internals - Deep Dive
Module Introduction
The Problem at Hand
Widget Tree and Element Tree - What, Why and How?
How Flutter Rebuilds and Repaints the Screen
How Flutter Executes build ()
Using "const" Widgets and Constructors
Writing Good Code
Extracting Widgets
Using Builder Methods
Understanding the Widget Lifecycle
Understanding the App Lifecycle
Understanding Context
A Problem With Lists and Stateful Widgets
Understanding the Problem Root
Using Keys
Wrap Up
Navigation and Multiple Screens [Meals APP]
Module Introduction
Planning the App
Starting With The App - Adding Base Data
Creating a Grid and Working With Linear Gradients
Registering a Screen as the Main Screen
Styling and Theming
Navigating to a New Page
Passing Data via the Constructor
Using Named Routes and Passing Data With Named Routes
Diving Deeper Into Named Routes
Adding a Meal Model and Data
Selecting Meals for a Chosen Category
Displaying Recipe Items and Using Network Images
Finishing the Meal List Item
Navigating to the Meal Detail Page
onGenerateRoute and onUnknownRoute
Finishing the Meal Detail Page
Adding a TabBar to the Appbar
Adding a Bottom TabBar
Adding a Custom Drawer
Adding Links to the Drawer
Replacing Pages (Instead of Pushing)
Popping Pages and Passing Data Back
Adding Filter Switches
Adding Filtering Logic
Adding a "Mark as Favorite" Feature
A Problem
Wrap Up
State Management [Shop APP]
Module Introduction
Planning the App
Defining a Data Model
Working on the "Products" Grid and Item Widgets
Styling and Theming the App
Adding Navigation to the App
Why State Management? and what is "State" and "State Management"?
Understanding the "Provider" Package and Approach
Working With Providers and Listeners
[Dart Deep Dive] Inheritance ("extends") vs Mixins ("with")
Listening in Different Places and Ways
Using Nested Models and Providers
Exploring Alternative Provider Syntaxes
Using "Consumer" Instead of "Provider.of"
Local State vs App-wide State
Adding Shopping Cart Data
Working With Multiple Providers
Connecting the Cart Provider
Working on the Shopping Cart and Displaying a Total
Displaying a List of Cart Items
Making Cart Items Dismissible
Adding Product Detail Data
Providing an Orders Object
Adding Orders
Adding an Orders Screen
Using a Side Drawer
Making Orders Expandable and Stateful Widgets vs Providers
Wrap Up
Working With User Input and Forms [Shop APP]
Module Introduction
Snackbars and Undoing "Add to Cart" Actions
Showing Alert Dialogs
Adding a "Manage Products" Page
"Edit Product" Screen and A Problem
Using Forms and Working With Form Inputs
Managing Form Input Focus
Multiline Inputs and Disposing Objects
Image Input and Image Preview
Submitting Forms
Validating User Input
Adding Validation to All Inputs
Saving New Products
Time to Update Products
Allowing Users to Delete Products
Wrap Up
Sending Http Requests [Shop APP]
Module Introduction
On-Device vs Web Storage
How to Connect Flutter to a Database
Preparing Our Backend
How to Send Http Requests
Sending Post Requests
Working With Futures in Dart
[Dart Deep Dive] Futures and Async Code
Showing a Loading Indicator
Handling Errors Gracefully
Working With "async" and "await"
Fetching Data, initState and "of(context)"
How to Transform Fetched Data
Implementing Pull to Refresh
Updating Data via Patch Requests
Utilizing Optimistic Updating
Creating Custom Exceptions and More Error Handling
A Challenge for You
Updating the "Favorite" Status Optimistically
Storing Orders in the Web
Fetching Orders and Fixing an Issue
Using the "FutureBuilder" Widget and Improving the Code
Wrap Up
Adding User Authentication [Shop APP]
Module Introduction
How Authentication Works
Prepare Backend
Adding the Auth Screen
Adding User Signup
Allowing Users to Log In
Handling Authentication Errors
Managing the Auth Token Locally (in the App)
Using the "ProxyProvider" and Attaching the Token to Outgoing Http Requests
Adding the Token to All Requests
Connecting the "Favorite" Status to Users
Attaching Products to Users and Filtering by Creator
Attaching Orders to Users
Adding a Logout Functionality
Automatically Logging Users Out (After Some Time)
Automatically Logging Users In
Wrap Up
Adding Animations [Shop APP]
Module Introduction
Animations From Scratch (Completely Manually Controlled)
Using the "AnimatedBuilder" Widget
Working With the "AnimatedContainer"
More Built-in Animation and Transition Widgets
Fading Loaded Images In (And Showing a Placeholder)
Adding a "Hero" Transition
Working With Slivers
Practice: Animating Order Boxes
Implementing Custom Route Transitions
Wrap Up
Using Native Device Features (Camera, Maps, Location) [Great Places APP]
Module Introduction
Planning the App
PlaceList and Place Provider Setup
Adding the "Add Place" Screen and An Image Input
Using Image Picker and the Device Camera
Storing the Image on the Filesystem (on the Device)
Managing Data and Images via the Provider Package
Handling Errors
Testing on Real Devices
Preparing SQLite
Storing and Fetching Data With SQLite
Adding a Location Input and The "location" Package
Fetching the User Coordinates
Displaying a Static Map Snapshot
Rendering a Dynamic Map (via Google Maps)
Allowing Users to Pick a Location on the Map
Storing the Location in SQLite
Adding a "Place Detail" Screen and Opening the Map in "readonly" Mode
Wrap Up
Running Native Swift, ObjectiveC, Java or Kotlin Code
Module Introduction
Sending a Method Call From Flutter
Running Android Code
Running iOS Code
Wrap Up
Publishing to the App Stores
Module Introduction
Preparing the Code
Preparing the App Configuration
Preparing Third-Party Services
Adding Icons and Splash Screens
Publishing Android Apps
Publishing iOS Apps
Roundup and Next Steps
You did It
Your Next Steps (To Become an Awesome Developer)
How to Plan and Develop Successful Apps
A Problem With Lists and Stateful Widgets
Learn Flutter and Dart to Build iOS and Android Apps
Widget and Flutter Internals - Deep Dive
By:
Packt Publishing
5 minutes
Share
Share the link to this page
Copied
Facebook
Twitter
WhatsApp
LinkedIn
Email
Add to Calendar
Add the class to your calendar
Add to Google Calendar
Add to Apple Calendar
Add to Yahoo Calendar
Add to Outlook Calendar
Print
Completed
You need to have access to the item to view this lesson.
One-time Fee
₹12,131.99
Buy Class
R2,493.99
Buy Class
₨12,131.99
Buy Class
$173.99
Buy Class
€165.26
Buy Class
£137.93
Buy Class
CA$244.44
Buy Class
A$268.17
Buy Class
S$233.63
Buy Class
HK$1,353.89
Buy Class
CHF 153.43
Buy Class
NOK kr1,930.75
Buy Class
DKK kr1,232.61
Buy Class
NZ$295.25
Buy Class
د.إ639.06
Buy Class
৳20,844.08
Buy Class
RM772.95
Buy Class
₦293,609.86
Buy Class
฿6,006.56
Buy Class
₺6,029.17
Buy Class
B$1,012.32
Buy Class
Лв323.68
Buy Class
₩242,317.97
Buy Class
₪634.81
Buy Class
₱10,218.86
Buy Class
¥26,341.97
Buy Class
MX$3,599.29
Buy Class
QR635.99
Buy Class
P2,379.74
Buy Class
KSh22,531.70
Buy Class
E£8,641.21
Buy Class
ብር21,828.25
Buy Class
Kz158,619.83
Buy Class
CLP$170,110.02
Buy Class
CN¥1,260.68
Buy Class
RD$10,515.88
Buy Class
DA23,260.24
Buy Class
FJ$394.99
Buy Class
Q1,346.24
Buy Class
GY$36,493.33
Buy Class
ISK kr23,947.98
Buy Class
DH1,748.59
Buy Class
L3,186.64
Buy Class
ден10,175.21
Buy Class
MOP$1,398.17
Buy Class
N$3,156.27
Buy Class
C$6,419.30
Buy Class
रु23,525.30
Buy Class
S/658.22
Buy Class
K703.15
Buy Class
SAR653.86
Buy Class
ZK4,809.91
Buy Class
L822.46
Buy Class
Kč4,180.54
Buy Class
Ft68,049.12
Buy Class
SEK kr1,902.06
Buy Class
ARS$175,247.26
Buy Class
Bs1,205.38
Buy Class
COP$761,700.62
Buy Class
₡89,131.14
Buy Class
L4,411.71
Buy Class
₲1,361,179.44
Buy Class
$U7,455.58
Buy Class
zł711.99
Buy Class
Already have an account?
Log In
Previous
Next
Sign Up
Signup to access thousands of classes
Continue with Facebook
Continue with Google
OR
Continue with Email
Already a member?
Log In
By registering for a LearnDesk account, you agree to our
Terms of Service
and
Privacy Policy
.
Share
Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.
Share with Google Contacts