Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Flutterビギナーのための Widget完全攻略
Search
watanave
April 24, 2024
Programming
52
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Flutterビギナーのための Widget完全攻略
watanave
April 24, 2024
More Decks by watanave
See All by watanave
Figma Dev Modeで変わる!Flutterの開発体験
watanave
0
5.3k
Flutter実践開発に書かなかったこと
watanave
0
88
決めず、語らずのリーダーシップ
watanave
0
590
複数プロジェクトを横断するゆめみテックリードの戦略
watanave
0
140
Androidエンジニア目線のKMM / iOSエンジニア目線のKMM
watanave
0
370
Why does Activity die soon?
watanave
0
380
Anko試食会
watanave
0
2.4k
Other Decks in Programming
See All in Programming
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
420
これって Effect でできたのでは? / TSKaigi Mashup Kansai #2
susisu
0
150
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
260
torikago - Ruby::Boxで照らすモジュラモノリスの実行境界
se4weed
1
360
運用ダッシュボードの設計を誰も教えてくれないのだけどみなさんどうしてるんですか? - チームに監視するという文化を根付かせるための第一歩を踏みたい -
satoshi256kbyte
1
100
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
140
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
340
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
120
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
490
わからない話を追いかけたら、プログラミング言語を作る側にいた
ydah
3
490
テーブルをDELETEした
yuzneri
0
140
OpenSpecのproposalにbrainstormingを持たせてみた
tigertora7571
1
210
Featured
See All Featured
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.5k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
750
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Deep Space Network (abreviated)
tonyrice
0
250
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.4k
Why Our Code Smells
bkeepers
PRO
340
58k
Design in an AI World
tapps
1
280
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
570
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
660
Transcript
FlutterϏΪφʔͷͨΊͷ Widgetશ߈ུ 2024/04/24 Yohta Watanave
w ෦ཅଠʢΑʔͨΜʣ w גࣜձࣾΏΊΈٕज़୲औక w ஶॻ'MVUUFS࣮ફ։ൃ w !ZPIUB@XBUBOBWF Who am
I
w 'MVUUFSͬͯφχʁ w ڥߏஙͷཁ w 8JEHFUલฤ w 8JEHFUޙฤ ΞδΣϯμ
Flutterͬͯφχʁ
w ϚϧνϓϥοτϑΥʔϜϑϨʔϜϫʔΫ w ։ൃݴޠ%BSU w ։ൃऀମݧ͕ྑ͍ w ҆ఆ͍ͯ͠Δ Flutterͬͯφχʁ
wϚϧνϓϥοτϑΥʔϜϑϨʔϜϫʔΫ w ։ൃݴޠ%BSU w ։ൃऀମݧ͕ྑ͍ w ҆ఆ͍ͯ͠Δ Flutterͬͯφχʁ
w ϚϧνϓϥοτϑΥʔϜϑϨʔϜϫʔΫ w։ൃݴޠ%BSU w ։ൃऀମݧ͕ྑ͍ w ҆ఆ͍ͯ͠Δ Flutterͬͯφχʁ
None
None
None
None
w ϚϧνϓϥοτϑΥʔϜϑϨʔϜϫʔΫ w ։ൃݴޠ%BSU w։ൃऀମݧ͕ྑ͍ w ҆ఆ͍ͯ͠Δ Flutterͬͯφχʁ
None
None
w ϚϧνϓϥοτϑΥʔϜϑϨʔϜϫʔΫ w ։ൃݴޠ%BSU w ։ൃऀମݧ͕ྑ͍ w҆ఆ͍ͯ͠Δ Flutterͬͯφχʁ
ϚϧνϓϥοτϑΥʔϜͰ ਏ͍ࢥ͍Λͨ͠ํ͍·ͤΜ͔ʁ
w ϚϧνϓϥοτϑΥʔϜٕज़ൟӫͱਰୀͷ܁Γฦ͠ w ͜͜৽͍͠Έͷͷ͕ݱΕͨ w 'MVUUFSͦͷதͷҰͭ ϚϧνϓϥοτϑΥʔϜͷྺ࢙
ैདྷ͔Β͋ΔϚϧνϓϥοτϑΥʔϜ J1IPOF "OESPJE ࢲ͕࣮ͨͪ͢Δ ϑϨʔϜʔϫʔΫͷίʔυ #VUUPOCVUUPOOFX#VUUPO CVUUPO5FYUl0,z
ैདྷ͔Β͋ΔϚϧνϓϥοτϑΥʔϜ J1IPOF "OESPJE ࢲ͕࣮ͨͪ͢Δ ϑϨʔϜʔϫʔΫͷίʔυ #VUUPOCVUUPOOFX#VUUPO CVUUPO5FYUl0,z
ैདྷ͔Β͋ΔϚϧνϓϥοτϑΥʔϜ J1IPOF "OESPJE ࢲ͕࣮ͨͪ͢Δ ϑϨʔϜʔϫʔΫͷίʔυ #VUUPOCVUUPOOFX#VUUPO CVUUPO5FYUl0,z MFUCVUUPO6*#VUUPO
CVUUPOTFU5JUMF l0,zʜ WBMCVUUPO#VUUPO DPOUFYU CVUUPOUJUMF l0,z ϓϥοτϑΥʔϜ ಠࣗͷίʔυ
ैདྷ͔Β͋ΔϚϧνϓϥοτϑΥʔϜ J1IPOF "OESPJE ࢲ͕࣮ͨͪ͢Δ ϑϨʔϜʔϫʔΫͷίʔυ #VUUPOCVUUPOOFX#VUUPO CVUUPO5FYUl0,z ϓϥοτϑΥʔϜ ಠࣗͷϘλϯ6*
ैདྷ͔Β͋ΔϚϧνϓϥοτϑΥʔϜ J1IPOF "OESPJE ࢲ͕࣮ͨͪ͢Δ ϑϨʔϜʔϫʔΫͷίʔυ #VUUPOCVUUPOOFX#VUUPO CVUUPO5FYUl0,z
ैདྷ͔Β͋ΔϚϧνϓϥοτϑΥʔϜ J1IPOF "OESPJE ࢲ͕࣮ͨͪ͢Δ ϑϨʔϜʔϫʔΫͷίʔυ #VUUPOCVUUPOOFX#VUUPO CVUUPO5FYUl0,z ϑϨʔϜʔϫʔΫ ͷڞ௨ίʔυ
ैདྷ͔Β͋ΔϚϧνϓϥοτϑΥʔϜ J1IPOF "OESPJE ࢲ͕࣮ͨͪ͢Δ ϑϨʔϜʔϫʔΫͷίʔυ #VUUPOCVUUPOOFX#VUUPO CVUUPO5FYUl0,z ϑϨʔϜʔϫʔΫ ͷڞ௨ίʔυ
IUUQTEPDT fl VUUFSEFWSFTPVSDFTBSDIJUFDUVSBMPWFSWJFX
w ैདྷ·Ͱͱ໌Β͔ʹΈ͕ҧ͏ w ҎલͱൺʹͳΒͳ͍΄Ͳ҆ఆͯ͠ʮී௨ʹಈ͘ʯ ݱͷϚϧνϓϥοτϑΥʔϜ
w ϚϧνϓϥοτϑΥʔϜϑϨʔϜϫʔΫ w ։ൃݴޠ%BSU w ։ൃऀମݧ͕ྑ͍ w ҆ఆ͍ͯ͠Δ Flutterͬͯφχʁ
w 'MVUUFSͬͯφχʁ wڥߏஙͷཁ w 8JEHFUલฤ w 8JEHFUޙฤ ΞδΣϯμ
ڥߏஙͷཁ
w 'MVUUFS4%,ͷΠϯετʔϧ w J04։ൃڥ w "OESPJE։ൃڥ Flutterͷڥߏங
Flutterͷڥߏங
w *%&ͷઃఆ w 7JTVBM4UVEJP$PEF w "OESPJE4UVEJP w *OUFMMJ+*%&" Flutterͷڥߏங
w '7. 'MVUUFSͷόʔδϣϯཧπʔϧ Flutterͷڥߏங
w 'MVUUFSͬͯφχʁ w ڥߏஙͷཁ w8JEHFUલฤ w 8JEHFUޙฤ ΞδΣϯμ
w ϑϨʔϜϫʔΫͷத৺ͱͳΔΫϥε w 'MVUUFSΞϓϦ8JEHFUͷΈ߹ΘͤͰ࣮ Ωϗϯ8JEHFU
Widgetͷ֊ߏ
Widgetͷ֊ߏ
Widgetͷ֊ߏ
Widgetͷ֊ߏ
Widgetͷ֊ߏ
Widgetͷ֊ߏ ᵋ$POUBJOFS ᵋ$FOUFS ᵋ5FYU
Widgetͷ֊ߏ
Widgetͷ֊ߏ ᵋ$PMVNO ᵓ5FYU ᵓ5FYU ᵋ5FYU
Widgetͷ֊ߏ ᵋ$PMVNO ᵓ5FYU ᵓ5FYU ᵋ5FYU
Ωϗϯ8JEHFU
Ωϗϯ8JEHFU ᵋ$FOUFS ᵋ3PX ᵓ*DPO ᵓ$POUBJOFS
ᴹ ᵋ*DPO ᵋ*DPO
Ωϗϯ8JEHFU ᵋ$FOUFS ᵋ3PX ᵓ*DPO ᵓ$POUBJOFS
ᴹ ᵋ*DPO ᵋ*DPO
Ωϗϯ8JEHFU ᵋ$FOUFS ᵋ3PX ᵓ*DPO ᵓ$POUBJOFS
ᴹ ᵋ*DPO ᵋ*DPO
Ωϗϯ8JEHFU ᵋ$FOUFS ᵋ3PX ᵓ*DPO ᵓ$POUBJOFS
ᴹ ᵋ*DPO ᵋ*DPO
Ωϗϯ8JEHFU ᵋ$FOUFS ᵋ3PX ᵓ*DPO ᵓ$POUBJOFS
ᴹ ᵋ*DPO ᵋ*DPO
Ωϗϯ8JEHFU
w 8JEHFUͷࢠؔɺ֊ߏͰ6*Λදݱ Ωϗϯ8JEHFU
ಠࣗͷ8JEHFUΫϥε࣮
Ωϗϯ8JEHFU w 8JEHFUΫϥεΛ࣮ͯ͠ΈΔ
Ωϗϯ8JEHFU w 8JEHFUΫϥεΛܧঝ͢Δ
Ωϗϯ8JEHFU w ίϯετϥΫλʢṖͷҾ,FZʣ
Ωϗϯ8JEHFU w #VJMEϝιουΛ࣮͢Δ
Ωϗϯ8JEHFU w ṖͷҾ#VJME$POUFYU
Ωϗϯ8JEHFU w ࣮ߦ݁ՌʢίʔυҰ෦লུʣ
Ωϗϯ8JEHFU w ࣮ߦ݁ՌʢίʔυҰ෦লུʣ
w ಠࣗ8JEHFUΫϥε࣮·ͱΊ w 8JEHFUΫϥεΛܧঝ w #VJMEϝιουͰ8JEHFUͷ֊Λੜ w ,FZɺ#VJME$POUFYUṖͷ·· Ωϗϯ8JEHFU
Ωϗϯ8JEHFU w ੩తͳΞϓϦ͔͠࡞Εͳ͍
ಈతͳը໘ߋ৽
w ಈతͳը໘ߋ৽Ͳ͏͢Εʜʁ ಈతͳը໘ߋ৽
ಈతͳը໘ߋ৽
ಈతͳը໘ߋ৽ ᵋ$PMVNO ᵓ*DPO#VUUPO ᵋ5FYU
ಈతͳը໘ߋ৽ ⁞
ಈతͳը໘ߋ৽
ಈతͳը໘ߋ৽
ಈతͳը໘ߋ৽
ಈతͳը໘ߋ৽
ಈతͳը໘ߋ৽
ಈతͳը໘ߋ৽
TFU4UBUFΛݺͼग़͢ ಈతͳը໘ߋ৽
TFU4UBUFΛݺͼग़͢ CVJMEϝιου͕ݺΕΔ ͪΐͬͱ෮श
TFU4UBUFΛݺͼग़͢ CVJMEϝιου͕ݺΕΔ ࢠ8JEHFUͷΠϯελϯε͕࠶ੜ ͪΐͬͱ෮श
w ಈతͳը໘ߋ৽·ͱΊ w 4UBUFGVM8JEHFUΛܧঝ͢Δ w TFU4UBUFϝιουͰɺঢ়ଶΛߋ৽͢Δ w #VJMEϝιου͕࠶ͼݺΕɺ8JEHFUΛ࠶ߏங͢Δ Ωϗϯ8JEHFU
w 'MVUUFSΞϓϦ8JEHFUͷ֊ߏ w ࣗͰը໘ߋ৽Ͱ͖ͳ͍4UBUFMFTT8JEHFU w ࣗͰը໘ߋ৽Ͱ͖Δ4UBUFGVM8JEHFU Ωϗϯ8JEHFU
w 'MVUUFSͬͯφχʁ w ڥߏஙͷཁ w 8JEHFUલฤ w8JEHFUޙฤ ΞδΣϯμ
͍ͬͨΜ$.Ͱ͢
None
None
None
None
ΏΊΈΦʔϓϯϋϯυϒοΫ ΦʔϓϯϋϯυϒοΫ 'MVUUFSͱ 'MVUUFSΤϯδχΞ࠾༻ ͓ࣄͷ͝૬ஊ
w 'MVUUFSͬͯφχʁ w ڥߏஙͷཁ w 8JEHFUલฤ w8JEHFUޙฤ ΞδΣϯμ
WidgetΛΑΓཧղ͢Δ
WidgetΛΑΓཧղ͢Δ
WidgetΛΑΓཧղ͢Δ ϘλϯΛλοϓ͢Δͱ ΧϯτΞοϓ͢Δը໘
WidgetΛΑΓཧղ͢Δ ϘλϯΛλοϓ͢Δͱ ΧϯτΞοϓ͢Δը໘
WidgetΛΑΓཧղ͢Δ λοϓ͢Δͱ ΧϯτΞοϓ͢ΔϘλϯ
$PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ᵋ&MFWBUFE#VUUPO ɹᵋ5FYU 4UBUFGVM8JEHFU
$PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ᵋ&MFWBUFE#VUUPO ɹᵋ5FYU
$PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ᵋ&MFWBUFE#VUUPO ɹᵋ5FYU 4UBUFGVM8JEHFU
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ᵋ&MFWBUFE#VUUPO ɹᵋ5FYU
DPVOU DPVOU
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ᵋ&MFWBUFE#VUUPO ɹᵋ5FYU
TFU4UBUF \ DPVOU ^ TFU4UBUF \ DPVOU ^
None
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ᵋ&MFWBUFE#VUUPO ɹᵋ5FYU
TFU4UBUF \ DPVOU ^
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ᵋ&MFWBUFE#VUUPO ɹᵋ5FYU
CVJMEϝιου͕ݺΕΔ
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ᵋ&MFWBUFE#VUUPO ɹᵋ5FYU
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ᵋ&MFWBUFE#VUUPO ɹᵋ5FYU
DPVOU
CounterButton0ʹΔͷ͔ʁ
None
Βͳ͍ʂ ͳ͊ͥʁͳ͊ͥʁ
WidgetΛΑΓཧղ͢Δ ϩάΛೖΕͯΈΔ ⁞
WidgetΛΑΓཧղ͢Δ ίϯιʔϧʹ
w 8JEHFUͷίϯετϥΫλݺΕ͍ͯΔ w $PVOUFS#VUUPO8JEHFUͷΠϯελϯε࠶ੜ w ΞϓϦىಈ࣌Ҏ߱ADSFBUF4UBUFA͕ݺΕ͍ͯͳ͍ w8JEHFUΑΓ4UBUFͷϥΠϑαΠΫϧ͕͍ʂ WidgetΛΑΓཧղ͢Δ
WidgetΛΑΓཧղ͢Δ Χϯτ4UBUF͕อ࣋ 4UBUF͕࠶ੜ͞Εͳ͍ͳΒ ΧϯτͷมΘΒͳ͍
͔͜͜Β Flutter෦ͷ͓
සൟʹΠϯελϯε࡞ΒΕΔ ͍ࣺͯ
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO 8JEHFU
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO $PVOUFS4DSFFO
8JEHFU &MFNFOU DSFBUF&MFNFOU
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO $PVOUFS4DSFFO
8JEHFU &MFNFOU 4UBUF࣋ͬͯΔ
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO $PVOUFS4DSFFO
8JEHFU &MFNFOU CVJME 4UBUF࣋ͬͯΔ
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO $PVOUFS4DSFFO
8JEHFU &MFNFOU 4UBUF࣋ͬͯΔ
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO $PVOUFS4DSFFO
ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO 8JEHFU &MFNFOU DSFBUF&MFNFOU 4UBUF࣋ͬͯΔ 4UBUF࣋ͬͯΔ
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO $PVOUFS4DSFFO
ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO 8JEHFU &MFNFOU TFU4UBUF 4UBUF࣋ͬͯΔ 4UBUF࣋ͬͯΔ
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO $PVOUFS4DSFFO
ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO 8JEHFU &MFNFOU CVJME 4UBUF࣋ͬͯΔ 4UBUF࣋ͬͯΔ
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO $PVOUFS4DSFFO
ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO 8JEHFU &MFNFOU CVJME 4UBUF࣋ͬͯΔ 4UBUF࣋ͬͯΔ ɹ ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO 8JEHFU
&MFNFOU 4UBUF࣋ͬͯΔ 4UBUF࣋ͬͯΔ 👀 $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ɹ ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO 8JEHFU
&MFNFOU 4UBUF࣋ͬͯΔ 4UBUF࣋ͬͯΔ 👀 $MBTTʁ ,FZʁ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ɹ ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO 8JEHFU
&MFNFOU 4UBUF࣋ͬͯΔ 4UBUF࣋ͬͯΔ 👀 &MFNFOU ࠶ར༻Ͱ͖ΔΘʂ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO ɹ ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO $PVOUFS4DSFFO
ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO 8JEHFU &MFNFOU 4UBUF࣋ͬͯΔ 4UBUF࣋ͬͯΔ DSFBUF&MFNFOU 🙅
WidgetΛΑΓཧղ͢Δ $PVOUFS4DSFFO ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO $PVOUFS4DSFFO
ᵋ$PMVNO ᵓ&MFWBUFE#VUUPO ᴹᵋ5FYU ᵋ$PVOUFS#VUUPO 8JEHFU &MFNFOU 4UBUF࣋ͬͯΔ 4UBUF࣋ͬͯΔ ಉ͡4UBUF Πϯελϯε
WidgetΛΑΓཧղ͢Δ 8JEHFU &MFNFOU ΞϓϦͷઃܭਤ ͍ࣺͯͷܰྔΦϒδΣΫτ ίϛ͍ͬͨ͜ͱΛͬͯ͘ΕΔཪํ͞Μ
w 8JEHFUίϯετϥΫλͷ,FZ&MFNFOU࠶ར༻ͷஅࡐྉ WidgetΛΑΓཧղ͢Δ
w#VJME$POUFYUͷਖ਼ମ&MFNFOU WidgetΛΑΓཧղ͢Δ
w#VJME$POUFYUͷਖ਼ମ&MFNFOU WidgetΛΑΓཧղ͢Δ
w#VJME$POUFYUͷਖ਼ମ&MFNFOU WidgetΛΑΓཧղ͢Δ
w 4UBUFGVM8JEHFUͷঢ়ଶ͕ҡ࣋͞ΕΔ༷ࢠΛ֬ೝ w 'MVUUFS෦ͰߦΘΕ͍ͯΔ͜ͱΛղઆ w ,FZ&MFNFOU࠶ར༻ͷஅࡐྉ w #VJME$POUFYU&MFNFOU WidgetΛΑΓཧղ͢Δ
ࠓͷৼΓฦΓ
w'MVUUFSͬͯφχʁʢ'MVUUFS࣮ફ։ൃୈষʣ w ϚϧνϓϥοτϑΥʔϜ w ։ൃݴޠ%BSU w ։ൃऀମݧ͕ྑ͍ w ҆ఆ͍ͯ͠Δ ࠓͷৼΓฦΓ
wڥߏஙʢ'MVUUFS࣮ફ։ൃୈষʣ w Πϯετʔϧखॱͷશମ૾ w ϙϐϡϥʔͳ*%& w 'MVUUFSͷόʔδϣϯཧπʔϧʢ'7.ʣ ࠓͷৼΓฦΓ
w8JEHFUલฤʢ'MVUUFS࣮ફ։ൃୈষʣ w 'MVUUFSΞϓϦ8JEHFUͷ֊ߏ w ࣗͰը໘ߋ৽Ͱ͖ͳ͍4UBUFMFTT8JEHFU w ࣗͰը໘ߋ৽Ͱ͖Δ4UBUFGVM8JEHFU ࠓͷৼΓฦΓ
w8JEHFUޙฤʢ'MVUUFS࣮ફ։ൃୈষʣ w 4UBUFGVM8JEHFUͷঢ়ଶ͕ҡ࣋͞ΕΔ༷ࢠΛ֬ೝ w 'MVUUFS෦ͰߦΘΕ͍ͯΔ͜ͱΛղઆ w ,FZ&MFNFOU࠶ར༻ͷஅࡐྉ w #VJME$POUFYU&MFNFOU ࠓͷৼΓฦΓ
w ୈষ%BSUͷݴޠ༷ w ୈষΞϓϦͷຊޠରԠɺΞηοτཧɺڥม w ୈষঢ়ଶཧͱ3JWFSQPE w ୈষߴͰอकੑͷߴ͍ΞϓϦΛ։ൃ͢ΔͨΊͷίπ w ʜBOENPSF‼
Flutter࣮ફ։ൃ