Requirements
To follow this course, it is required to know following …
•
Setup
Flutter Widget Tree
ThemeData
Statless vs Stateful
Text
Styling
Widgets
Actions
pub.dev Library
Tips
•
It is recommended to give INTERNET permission when giving permission on Android.
•
User must use Future class, async, and await when handling permissions.
•
Need to use async to recieve data from the dialog
•
Can access context anywhere in stateful widget
•
Treat dialog as a page i.e. use Navigator.of(context).pop(variable); to recieve the data
•
async gives Future while async* gives Stream link
◦
FutureBuilder and StreamBuilder both stops when error occurs and changes the snapshot.data to null while changing the connection state to done
•
In a case whene we have to run flutter related code before the runapp, we have to add WidgetsFlutterBinding.ensureInitialized(); right under the void main() .
•
When user wants to stretch height inside the container but causing error, try to wrap the widget with IntrinsicHeight with row/column using stretch
•
When you need keyboard on iOS simulator, press CMD + Shift + K
•
When recieving data from pop be aware that the result can be null (e.g. forced return)
QnA
What is Flutter?
Flutter vs React Native
Why



.png&blockId=a0d7cff0-8774-4474-a77f-4da6c47aef70)



.png&blockId=fd6a2c12-a171-4498-b370-065e9290fdc3)
.png&blockId=a3bcd41c-0377-4b20-a420-70846276da35)
.png&blockId=c546f3a9-1d0c-41ce-8bdf-0e529157fbb5)
.png&blockId=c3e9debc-a044-4d31-9905-355d527bffa6)
.png&blockId=fb954ec0-26d9-4bde-8e27-c0977c04276e)
.png&blockId=2537d9c1-4bca-4be9-bd4b-c9a143b9eb85)
.png&blockId=58369be0-b30e-4195-afe0-ff26216262f4)
.png&blockId=c3c82ce3-477b-4177-9cbf-16e0f3925659)
.png&blockId=d21497c1-8cd9-442b-a8ea-d18fc0e4b721)
.png&blockId=627be4b9-301b-4edc-ba78-3514b1a70eeb)
.png&blockId=16cd0009-8df6-440d-ac69-f7b1dbf7a030)
.png&blockId=5dd09cd0-15bf-4c57-b598-68a7ecb5727d)
.png&blockId=68e444ea-f2de-4bba-98b8-f691f9e9969c)
.png&blockId=7b9dc9e3-0b2c-47f9-b080-acf81052db78)
.png&blockId=8aa57f98-b5ae-4eff-b69f-70cb4dfb446b)
.png&blockId=b7f0012b-e43d-48a8-95ff-f13eaddedcad)
.png&blockId=4786a931-b0a7-4a9e-928b-ed5a9570229c)
.png&blockId=22b7c3a6-5455-457c-9945-56a1bac0a558)
.png&blockId=6278a278-6e97-4453-9fa3-e3a111080782)