0% found this document useful (0 votes)
10 views

Flutter Cheatsheet

Uploaded by

sakshamcomp20
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

Flutter Cheatsheet

Uploaded by

sakshamcomp20
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Fl

utt
erCheatsheet
I
nit St
atel
essWi
dget
f
lut
tercr
eat
emy_pr
oject i
mpor
t'package:
fl
utt
er/
mat
eri
al.
dar
t'
;
f
lut
tercr
eat
e--
orgcom.your
orgy
our
_pr
oject
cl
assMyAppext endsStat
elessWidget{
MyApp(
{Keykey@r equir
edt hi
s.name}
):
super
(key:key);
Heal
thCheck
f
inalSt
ri
ngname;
f
lut
terdoct
or
@ov erride
Wi dgetbuild(Buil
dCont
extcont
ext
){
returnCont ainer
(
Hel
loWor
ld child:Text('
Hell
o,$name'
),
);
i
mpor
t'package:
fl
utt
er/
mat
eri
al.
dar
t'
; }
}
v
oidmain(
){
runApp(
MyApp(
));
} St
atef
ulWi
dget
cl
assMyAppext endsStatelessWidget{
@ov err
ide i
mpor
t'package:
fl
utt
er/
mat
eri
al.
dar
t'
;
Widgetbuild(
BuildCont
extcont ext
){
r
eturnMat eri
alApp( cl
assMyAppext endsStateful
Wi dget{
titl
e:'Hel
lowor l
d!'
, @overr
ide
home:Scaf f
old( _
WidgetWithStateStat
ecr eateStat
e()=>_
body:Center( Widget
Wi t
hSt at
eState();
chi
ld:Text(
'Hell
oworld')
, }
),
), cl
ass_Widget
Wit
hSt
ateSt
ateext
ends
)
; St
ate<MyApp>{
} i
ntcount
er=0;
}
i
ncr
ement(){
setSt
ate(
(){count
er++;}
);
}
Requi
redanddef
aul
tpr
ops
decr
ement(){
set
Stat
e((
){count
er-
-;}
);
i
mpor
t'package:
fl
utt
er/
mat
eri
al.
dar
t'
;
}
cl
assMyAppext endsStatel
essWi
dget{
@ov erride
MyApp(
{@r equir
edthi
s.id,
Wi dgetbui ld(BuildContextcontext
){
t
his.name='vishnu'
,
retur nRow(
}
);
chi ldren:<Wi dget>[
FlatBut ton(onPr essed:i
ncrement,
f
inalSt
ri
ngi
d;
child:Text( '
I
ncrement '
))
,
f
inalSt
ri
ngname;
FlatBut ton(onPr essed:decrement
,
child:Text( '
Decrement')
),
@ov erride
Text (count er.
toStri
ng())
,
Wi dgetbuild(Buil
dCont
extcont
ext
){
],
returnCont ainer
(
);
child:Text('
$id$name'
),
}
);
}
}
}
ht
tps:
//
www.
li
nkedi
n.com/
in/
codemaker
2015
Fl
utt
erCheatsheet
Combi
ningpr
opsandst
ate Li
fecy
clehooks
i
mpor
t'package:
fl
utt
er/
mat
eri
al.
dar
t'
; cl
ass_ MyAppext endsStat
e<MyComponent
>{
@ov err
ide
cl
assMyAppext
endsStatef
ulWi
dget{ voidini
tSt
at e(
){
MyApp(
{@r
equi
redthi
s.name})
; /
/thismet hodiscal
ledbefor
ethef
ir
stbui
ld
super.
ini
tState(
);
f
inalSt
ri
ngname; }

@overr
ide @o
@ v er
ride
_SomeWidget
Stat
ecreat
eSt
ate(
)=> voiddidUpdateWidget(
_SomeWidget
Stat
e()
; MyComponentol dWidget){
} /
/thismet hodIScall
edwhen
/
/parentwi dgeti
srebuilt
cl
ass_SomeWidget
Stat
eext
ends super.
didUpdateWidget(ol
dWidget
);
St
ate<MyApp>{ }
i
ntcount=0;
@
@ov er
ri
dedidChangeDependencies(
){
@ov erride /
/call
edwhenI nher
it
edWidgetupdates
Wi dgetbuild(Buil
dCont
extcontext
){ super
.di
dChangeDependencies(
);
returnCont ainer
( }
child:Text('
$count${
widget.
name}'
),
); @ov er
ride
} voiddispose(){
} //cal
ledafterwidgetwas
//unmountedf r
om widgett
ree
cl
assPar entWidgetextendsStatelessWidget{ super.di
spose()
;
@ov er
ride }
Widgetbuild(Buil
dContextcontext){ }
r
eturnCont ainer
(
chi
ld:SomeWi dget(name:'vi
shnu'),
)
;
} Andr
oidI
nkef
fect
}
I
nkWell
(
chil
d:Text(
'But
ton'
),
onTap:_onTap,
Det
ect
ingGest
ures onLongPress:_onLongPress,
onDoubleTap:_onDoubleTap,
GestureDet
ector( onTapCancel:_
onTapCancel ,
onTap:_onTap, )
;
onLongPress:_onLongPr
ess,
chi
ld:Text(
'But
ton'
),
);
Pl
atf
orm speci
fi
ccode
i
mpor
t'dar
t:i
o'showPl
atf
orm;
Hi
dest
atusbar
i
f(Pl
atf
orm.i
sIOS){
i
mpor
t'package:
fl
utt
er/
ser
vices.
dar
t'
; doSmthIOSSpeci
fi
c()
;
}
v
oi dmai
n(){
SystemChrome i
f(Pl
atf
orm.
isAndr
oid){
.set
Enabl
edSyst
emUI
Over
lays(
[]
); doSmthAndroi
dSpeci
fi
c()
;
} }

ht
tps:
//
www.
li
nkedi
n.com/
in/
codemaker
2015
Fl
utt
erCheatsheet
Loadi
ngi
ndi
cat
or Showal
ert
cl
assSomeWidgetextendsStatef
ulWidget{ showDi alog<v oi
d>(
@over
ri
de context :cont ext,
_
SomeWidgetSt
atecreateSt
ate()=> barri
er Dismi ssible:false,
_
SomeWidgetSt
ate()
; buil
der :( BuildCont extcontext){
} ret
ur nAl ert
Dialog(
ti
tl
e:Text ('
Aler tTitl
e'),
class_SomeWidgetStat
eext
ends cont ent :Text('
MyAl ertMsg'),
State<SomeWidget>{ actions:<Wi dget >[
Futurefut
ure; FlatBut t
on(
chi l
d:Text (
'
Askmel ater'
),
@ov err
ide onPr essed:( ){
voidini
tSt
ate(){ pr int('
Askmel aterpressed'
);
futur
e=Fut ure.
delay
ed(
Dur
ati
on(
seconds:
1))
; Navi gator.
of (
cont ext)
.pop()
;
super.
ini
tSt
ate(); },
} ),
FlatBut t
on(
@o
@ v erride chi l
d:Text (
'Cancel '
),
Wi dgetbuild(Buil
dCont extcont ext){ onPr essed:( ){
returnFut ureBuil
der( pr int('
Cancelpr essed')
;
future:future, Navi gator.
of (
cont ext)
.pop()
;
builder:(context,snapshot){ },
r
eturnsnapshot .connectionSt ate== ),
Connect i
onSt ate.
done FlatBut t
on(
?Text ('
Loaded' ) chi l
d:Text (
'OK'),
:Ci r
cularProgressIndicator(); onPr essed:( ){
}, pr int('
OKpr essed');
); Navi gator.
of (
cont ext)
.pop()
;
} },
} ),
],
);
},
Lockor
ient
ati
on );

i
mpor
t'package:
fl
utt
er/
ser
vices.
dar
t'
;

v
oi dmai n()async{ Checki
fdev
awai tSystemChr ome
.setPreferr
edOrientati
ons([ booli
sDev=false;
Devi
ceOr i
entation.
port
rait
Up, asser
t(i
sDev==true)
;
]);
i
f(i
sDev){
runApp(
App(
)); doSmth()
;
} }

ht
tps:
//
www.
li
nkedi
n.com/
in/
codemaker
2015
Fl
utt
erCheatsheet
Navi
gat
ion Ar
rays
i
mpor
t'package:
fl
utt
er/
mat
eri
al.
dar
t'
; f
inall
engt
h=i
tems.
lengt
h;

cl
assFi r
stScreenext endsSt atel
essWidget{ f
inalnewI
tems=i
tems.
.addAl
l(
other
It
ems)
;
@ov err
ide f
inalal
lEv
en=i
tems.
every(
Widgetbuild(Buil
dCont extcontext){ (i
tem)=>i
tem %2==0)
;
r
eturnCent er(
chi l
d:RaisedButton( f
inalf
il
led=Li
st<i
nt>.
fi
ll
ed(
3,4)
;
chi
ld:Text('
Got oSecondScr een'),
onPressed:()=> f
inaleven=it
ems.where(
(n)=>n%2==0) .t
oLi
st(
);
Navigator
.pushNamed( context,
'/second'
),
f
inalfound=i
tems.f
irst
Where(
),
(i
tem)=>item.
id==27);
)
;
f
inali
ndex=items.
indexWhere(
}
(i
tem)=>item.
id==27);
}
f
inalf
lat=i
tems.
expand(
(_)=>_
).t
oLi
st(
);
assSecondScr
cl eenextendsStatel
essWidget{
v
oid_pushSecondScr een(cont
ext){ f
inalmapped=i
tems.expand(
Navigat
or.push(context
, (
it
em)=>[ it
em +1]
).
toLi
st(
);
Materi
alPageRout e(
i
tems.
for
Each(
(i
tem)=>pr
int
(i
tem)
);
bui
lder:(context
)=>SecondScr een(
)
) i
tems.
asMap().
forEach(
); (i
ndex,it
em)=>pri
nt(
'$i
tem,
$index'
))
;
}
f
inali
ncl
udes=i
tems.
cont
ains(
27)
;
@ov erri
de f
inali
ndexOf=i
tems.
indexOf
(27)
;
Wi dgetbuild(BuildContextcontext){
returnCol umn( f
inalj
oined=i
tems.
joi
n('
,
'
);
chi l
dren:<Wi dget>[
RaisedButton( f
inalnewI
tems=i
tems.map(
chil
d:Text('Goback!')
, (
it
em)=>item +1)
.t
oLi
st(
);
onPressed:( )=>Navigator.
pop(cont
ext
), f
inali
tem =i
tems.
remov
eLast
();
),
RaisedButton( i
tems.
add(
27)
;
chil
d:Text('GotoSecondScr een')
,
onPressed:( )=> f
inalr
educed=i
tems.
fol
d({
},(
acc,
item){
_pushSecondScr een(context)
, acc[
it
em.
id]=i
tem;
),
], r
etur
nacc;
);
} }
);
} f
inalr
ever
sed=i
tems.
rev
ersed;
v
oidmai n(){ i
tems.
remov
eAt
(0)
;
runApp( Mat eri
alApp(
ini
tialRoute:'/'
, f
inalsl
ice=i
tems.
subl
ist
(5,
27)
;
routes:{ f
inalhasOdd=i
tems.
any(
'/
':(context)=>Fi r
stScr
een(), (i
tem)=>i
tem %2==0)
;
'/
second' :(context)=>SecondScr
een(
),
}, i
tems.
sor
t((
a,b)=>a-b)
;
));
} i
tems.
repl
aceRange(
5,27,
[1,
2,3]
);

i
tems.
inser
t(0,
27)
;

ht
tps:
//
www.
li
nkedi
n.com/
in/
codemaker
2015
Fl
utt
erCheatsheet
Ht
tpr
equest AsyncAwai
t
dependenci
es: Future<int>doSmthAsync()async{
htt
p:^0.
12.0 fi
nalr esult=awai
tFuture.
value(
27);
returnresult;
}
i
mpor
t'dart
:conv
ert'
showjson;
i
mpor
t'package:
htt
p/ht
tp.
dart'
asht
tp;
cl
assSomeCl ass{
method()async{
htt
p.get(
API_URL).
then(
(ht
tp.
Responser
es){
f
inalresul
t=awaitFut
ure.
val
ue(
27)
;
fi
naldata=json.
decode(
res.
body);
r
eturnresult
;
pri
nt(
data)
; }
})
; }

JSON Si
ngl
eton
dependenci
es:
j
son_annot
ati
on:^
2.0.
0 cl
assSi
ngl
eton{

st
ati
cSi
ngl
eton_
inst
ance;
dev_
dependencies:
bui
ld_r
unner:^1.0.
0 f
inali
ntpr
op;
j
son_seri
ali
zable:^
2.0.
0
f
actor
ySingl
eton(
)=>
_inst
ance??=newSingl
eton.
_int
ernal
()
;
i
mpor
t'package:
json_
annot
ati
on/ Singlet
on.
_int
ernal
()
json_
annot
ati
on.
dar
t'
; :prop=27;

par
t'user
.g.
dar
t'
; }

@JsonSeri
alizabl
e()
cl
assUser{
St
ri
ngdisplayName; Debounce
St
ri
ngphotoUr l;
Ti
mer_
debounce;
User
({t
his.
displ
ayNamet
his.
phot
oUr
l}
);
i
f(_
debounce?
.isAct
ive??f
alse)
/
/_$UserFromJsonisgener at
edand _
debounce.
cancel
();
/
/ avail
ableinuser.
g.dart
f
actoryUser.
fromJson( _
debounce=Ti mer(
Map<St ri
ng,dynami c>j
son){ constDurat
ion(mi
ll
iseconds:5000)
,(){
r
eturn_$UserFromJson(j
son)
; someFun();
} }
);

//_$UserToJsonisgenerat
edand
// avail
ableinuser
.g.
dart
Map<St ri
ng,dynamic>toJson(
)=> Vi
shnuSi
van
_ $UserToJson(
thi
s);
} codemaker2015@gmai l
.com
+919961907453
f
inaluser=User.
fromJson(
json.
decode(
jsonSt
ring)
); htt
ps:
//
www. li
nkedin.com/ i
n/codemaker2015
htt
ps:
//
github.
com/ codemaker 2015
/
/t oJsoniscal
ledbyencode htt
ps:
//
codemaker 2015.medi um. com
j
son.encode(
user)
;
htt
ps:
//
www. hackerrank.com/ codemaker
2015

You might also like