๐ฑ Mobile/ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ (7) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day7 ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day7 ์ง๋ ์๊ฐ์๋ ๊ณ์ฐ๊ธฐ๋ฅผ ๋ง๋ค์ด ๋ดค์๋ค. ์ด๋ฒ์๋ 'ํญ(tab)' ์ ๋ํด ์์๋ณผ ๊ฒ์ด๋ค. ์ฐ๋ฆฌ๊ฐ ๋ณดํต ์ธ์คํ๊ทธ๋จ์ด๋, ์นด์นด์คํก์์ ์์ฃผ ๋ง์ด ์ฌ์ฉํ๋ ํญ๋ฐ๋ฅผ ์๊ณ ์๋ค๋ฉด ๊ธฐ๋ฅ ์ดํด์ ๋ํด์๋ ์กฐ๊ธ ์ฝ๊ฒ ์ ๊ทผํ ์ ์๋ค. ๊ฐ ํ๋ฉด์ ํญ์ผ๋ก ์ฐ๊ฒฐํ ํญ๋ฐ๋ฅผ ์ด์ฉํ๋ฉด ๊ด๋ จ ์๋ ๋ด์ฉ๋ผ๋ฆฌ ๋ฌถ์ ์ ์๋ค. ๋ฉ์ธํ๋ฉด์์ ํญ์ ๋๋ฌ ํ๋ฉด์ ์ด๋ํ ์ ์๊ธฐ ๋๋ฌธ์ ์ข ๋ ์ง๊ด์ ์ธ ์ฑ์ ๋ง๋ค ์ ์๋ค. ์ฌ๋ฌ ํ์ด์ง ๋ง๋ค๊ณ ์ด๋ํ๊ธฐ ์ฐ์ , ์ฌ๋ฌ ํ๋ฉด์ ๋ง๋ค๊ณ ๊ฐ ํ๋ฉด์ ํญ๋ฐ์ ์ฐ๊ฒฐํด ์ฌ์ฉ์๊ฐ ํญ์ ๋๋ ์ ๋ ํ๋ฉด์ผ๋ก ์ด๋ํ๋ ์ฑ์ ๊ตฌํํด๋ณด๊ฒ ๋ค. ๋ชจ๋ฐ์ผ ์ฑ ๊ฐ๋ฐ์์๋ ์ด๋ฅผ ๋ด๋น๊ฒ์ด์ (navigation)์ด๋ผ๊ณ ํ๋ค. ๋ด๋น๊ฒ์ด์ ์ ๋ค์ ํฌ์คํ ๋ ๋ค๋ค๋ณด๊ณ ์ค๋์ ํญ๋ฐ๋ฅผ ์ด์ฉํด๋ณด๊ฒ ๋ค. class Fi.. ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day6 ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day6 ์ง๋ ์๊ฐ๊น์ง๋ ๊ธฐ๋ณธ์ ์ธ ํ๋ฌํฐ ์์ ฏ์ ๋ดค์๋ค. ์ด๋ฒ์๋ ๊ณ์ฐ๊ธฐ ์ฑ์ ๋ง๋ค์ด์ ์ฌ์ฉ์์ ์ํธ์์ฉ์ ํ๋ ์์ ฏ์ ๋ณด๋ ค๊ณ ํ๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๋ฒํผ์ ์ฌ์ฉ์๊ฐ ๋๋ ์ ๋ onPressed๋ผ๋ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ๋ค. ๋ง์ ๊ณ์ฐ๊ธฐ ์ฑ ๋ง๋ค๊ธฐ 1. ์ ํ๋ก์ ํธ๋ฅผ ์์ฑํ๊ณ main.dart ํ์ผ์์ Column์ ์ฌ์ฉํ ์ ์๊ฒ StatefulWidget์ ๋ง๋ ๋ค. 2. Column์ children์ ์ ์ธํ ํ ์ฐจ๋ก๋๋ก Text, Textfield, ElevateButton ์์ ฏ์ ์ถ๊ฐํ๋ค. ElevateButton ์์ ฏ์ onPressed๋ ๋ฒํผ์ด ๋๋ ธ์ ๋ ๋ฐ์ํ๋ ์ด๋ฒคํธ์ด๋ค. child : Column( children : [ Text('flutter'), TextField(), Ele.. ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day5 ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day5 ์ง๊ธ๋ถํฐ๋ ๋ณธ๊ฒฉ์ ์ผ๋ก ํ๋ฌํฐ ์ฑ์ ๊ฐ๋ฐํ๋ ๋ฐ ํ์ํ ๋ด์ฉ์ ํ๋์ฉ ์ดํด๋ณด๋ ค๊ณ ํ๋ค. ๊ทธ ์ค์์ ๊ตฌ๊ธ์ ๋จธํฐ๋ฆฌ์ผ ๋์์ธ์ด ์ ์ฉ๋ ์์ ฏ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๊ณผ ์ฑ์ ์ด๋ฏธ์ง, ํฐํธ ๋ฑ์ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ ๋ฑ ๊ณต๋ถํ ๊ฒ์ด๋ค. ์ค์บํด๋๋ฅผ ์ด์ฉํ ๋จธํฐ๋ฆฌ์ผ ๋์์ธ ์ ์ฉ ๋จธํฐ๋ฆฌ์ผ ๋์์ธ์ ๊ตฌ๊ธ์์ 2014๋ ๋ถํฐ ์ฌ์ฉํ ํ๋ซ ๋์์ธ ์ง์นจ์ด๋ค. ๋จธํฐ๋ฆฌ์ผ ๋์์ธ์ ์ ์ฉํ๋ฉด ํ๋ฉด, ๋จ์ ์์ฃผ์ ๊ฐ๊ฒฐํ ๋์์ธ์ ๋ฐํ์ผ๋ก ์ฑ์ ์ฉ๋์ ์ค์ด๊ณ ๋์์ ์๋๋ฅผ ๊ฐ์ ํ ์ ์๋ค. ํ๋ฌํฐ ์ฑ์ ์ ์ํ ๋ ๋จธํฐ๋ฆฌ์ผ ๋์์ธ์ ์ ์ฉํ๋ ค๋ฉด ์ค์บํด๋ ํด๋์ค๋ฅผ ์ด์ฉํ๋ค. ์ค์บํด๋ ํด๋์ค๋ ๊ฐ์ข ์์ ฏ์ ๋จธํฐ๋ฆฌ์ผ ๋์์ธ ๋ ์ด์์์ผ๋ก ์ค๊ณํ๋ ๊ฒ์ ๋๋๋ค. ์ ๋ชฉ ์ค ์ถ๊ฐํ๊ธฐ 1. ์ค์บํด๋์ appBar๋ฅผ ์ ์ธํ๊ณ ์๋ก์ด AppBar.. ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day4 ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day4 ์์ ฏ์ ์๋ช ์ฃผ๊ธฐ๋ฅผ ์๋ฉด ์ธ์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์์ง, ๊ทธ๋ฆฌ๊ณ ํ๋ฉด์ด ์ฌ๋ผ์ง ๋ ์ด๋ค ๋ก์ง์ ์ฒ๋ฆฌํด์ผ ํ ์ง๋ฅผ ์ ๋ฆฌํด์ ๋ฃ์ ์ ์๋ค. ์๋ช ์ฃผ๊ธฐ๋ฅผ ์ดํดํ๋ฉด ์ฑ์ ๋์์ด๋ ์์์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์๋ค. ์คํ ์ดํธ๋ฆฌ์ค ์์ ฏ์ ํ ๋ฒ ๋ง๋ค์ด์ง๋ฉด ๊ฐฑ์ ํ ์ ์์ผ๋ฏ๋ก ์๋ช ์ฃผ๊ธฐ๊ฐ ์๋ค. ์ฆ, ๋ค๋ฅธ ํ๋ฉด์ผ๋ก ๋์ด๊ฐ๋ฉด ๋ชจ๋ ๋ก์ง์ด ์ข ๋ฃ๋๋ค. ๊ทธ๋ฌ๋ ์คํ ์ดํธํ ์์ ฏ์ 10๋จ๊ณ๋ก ๊ตฌ๋ถํ๋ ์๋ช ์ฃผ๊ธฐ๊ฐ ์๋ค. ์์ ๋ถ์ ๋ฒํธ์์ผ๋ก ์๋ช ์ฃผ๊ธฐ๊ฐ ์งํ๋๋ฏ๋ก ์์๋ ๋์ฌ๊ฒจ๋ด์ผ ํ๋ค. ์ํ๋ฅผ ์์ฑํ๋ createState() ํจ์ ๋จผ์ StatefulWidget ํด๋์ค๋ฅผ ์์๋ฐ๋ ํด๋์ค๋ ๋ฐ๋์ createState() ํจ์๋ฅผ ํธ์ถํด์ผ ํ๋ค. ์ด ํจ์๋ ๋ค๋ฅธ ์๋ช ์ฃผ๊ธฐ ํจ์๋ค์ด ํฌํจ๋ State ํด๋์ค๋ฅผ ๋ฐํํ.. ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day3 ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day3 ํ๋ฌํฐ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค๋ฉด ๋ง์ ํ์ผ๊ณผ ํด๋๊ฐ ์๋์ผ๋ก ์์ฑ๋๋ค. ์ด๋ฌํ ํ๋ฌํฐ ํ๋ก์ ํธ์ ๊ตฌ์ฑ์ ์ดํด๋ณด๋๋ก ํ๋ค. ๊ทธ๋ฆฌ๊ณ , ํ๋ฌํฐ ์ฑ ๊ฐ๋ฐ์์ ํต์ฌ์ธ ์์ ฏ๊ณผ ์๋ช ์ฃผ๊ธฐ๋ฅผ ์์๋ณด๋ ค๊ณ ํ๋ค. ํ๋ฌํฐ ํ๋ก์ ํธ ๊ตฌ์กฐ ํด๋ ๋ด์ฉ ๋น๊ณ android ์๋๋ก์ด๋ ํ๋ก์ ํธ ๊ด๋ จ ํ์ผ ์๋๋ก์ด๋ ์คํ๋์ค๋ก ์คํ ๊ฐ๋ฅ iOS iOS ํ๋ก์ ํธ ๊ด๋ จ ํ์ผ ์์ค์ฝ๋๋ก ์คํ ๊ฐ๋ฅ(๋งฅ ์ ์ฉ) lib ํ๋ฌํฐ ์ฑ ๊ฐ๋ฐ์ ์ํ ๋คํธ ํ์ผ ํ๋ฌํฐ SDK ์ค์น ํ์ test ํ๋ฌํฐ ์ฑ ๊ฐ๋ฐ ์ค ํ ์คํธ ํ์ผ ํ ์คํธ ํธ์์ฑ ์ ๊ณต ๋ฃจํธ์์๋ ์ฌ๋ฌ ํ์ผ์ด ์์ง๋ง, ์ฌ๊ธฐ์ ์ฃผ๋ชฉํ ํ์ผ์ pubspec.yaml์ด๋ค. pubspec.yaml ํ์ผ์ ํ๋ฌํฐ์์ ๋ค์ํ ํจํค์ง์ ์ด๋ฏธ์ง, ํฐํธ ๋ฑ์ ์ฌ์ฉํ ์ ์๊ฒ ํด์ค๋ค. ์ํ .. ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day2 ํ๋ฌํฐ ์ฑํ๋ก๊ทธ๋๋ฐ Day2 ์ค๋์ ๋คํธ ์ธ์ด๋ฅผ ์ด์ฉํ์ฌ ๊ฐ๋จํ ํ๋ก๊ทธ๋จ์ ๊ตฌํํด๋ณด๋ ค๊ณ ํ๋ค. ๊ตฌ๊ตฌ๋จ ํ๋ก๊ทธ๋จ 2~9๋จ๊น์ง ๊ตฌ๊ตฌ๋จ์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ด๋ค. for๋ฌธ์ ์ค์ฒฉํด์ ์ฝ๋๋ฅผ ์ง ๋ค. void main() { for (int i = 2; i ์ด์ 1 2 ๋ค์