[GP] Anko๋ฅผ ์ด์ฉํ Android App Layout ์์ฑ
์ด ๊ธ์ N.K Dev Lab์์ ์์ฑ๋ ๊ธ์
๋๋ค.
์๋๋ก์ด๋ ๊ฐ๋ฐ์ ํ๋ฉด์ Kotlin ์ธ์ด๋ฅผ ์ ํ๊ฒ ๋์๊ณ ์ด๋ฅผ ์จ๋ณด๋ฉด์ ๋๋ผ๋ ๋ฐ๋ ํ์คํ Java๋ณด๋ค ๊ฐ๋ ฅํ๊ณ ์์ ์ฑ ์๋ ์ธ์ด๋ผ๋ ๊ฒ์ ๋ง์ด ๋๋๋๋ค.
๊ทธ๋ฐ๋ฐ ์ ๊ฐ ์ ๋ง๋ก ์๋๋ก์ด๋ ๊ฐ๋ฐ์ ํ๋ฉด์ ๋ถํธํ๋ค๊ณ ์๊ฐํ๋ ๊ฒ์ ๋ฐ๋ก findViewbyId ์์ต๋๋ค. ์ด ๊ฒ์ XML์ ๋ ์ด์์์ ์์ฑํ์ฌ ๋ ๋ฆฌ์์์ ์๋ ์ปดํฌ๋ํธ๋ฅผ id ๊ฐ์ ์ด์ฉํ์ฌ ์๋ฐ ์ฝ๋๋ก ๊ฐ์ ธ์ค๋ ๋ฐฉ๋ฒ์ธ๋ฐ, ์ค์ ํ ํ๋ก์ ํธ๋ฅผ ์งํํ ๋ Resource ๋ถ๋ถ์ ๊ณจ ๋๋ฆฌ๋ ๋ฉด์ด ์์ง ์์ ์์์ต๋๋ค. ์ผ๋ถ๋ ์ปดํ์ผ์ด ์๋๊ฑฐ๋ ๊ฐ์๊ธฐ ๋ค๋ฅธ ๊ณณ์์ ์ ๋๋ ๋น๋๊ฐ ์ฎ๊ฒจ ํ๋ฉด ์๋๋ ํ์์ด ๋ํ๋๋ ๋ฑ ์ฌ๋ฌ๊ฐ์ง ํด๊ดดํ ํ์์ ๋ง์ด ๊ฒฝํํ์ต๋๋ค.
๊ทธ๋ฐ ์ ๋ findViewById๊ฐ onCreate ๋ฉ์๋ ๋ฐ์ ๊ท์ฐฎ๊ฒ ์์ฑํ๊ณ ํ๋ ๊ฒ์ด ์ ๋ง์์ ๊บผ๋ฆผ์งํ์ฌ ์๋๋ก์ด๋ ๊ฐ๋ฐ ์ด๊ธฐ์๋ ButterKnife ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ๊ทธ ๋ถํธํจ์ ์กฐ๊ธ ํด์ํ์๊ณ ๋์ค์๋ ์๋๋ก์ด๋ ์คํ๋์ค์ ๋ฐ์ธ๋ฉ ํ์ฅ ๊ธฐ๋ฅ์ด ๋์ ์กฐ๊ธ์ ์ํ ๋์์ง์.
ํ์ง๋ง ์ฝํ๋ฆฐ ์ธ์ด๋ฅผ ์ฌ์ฉํ ๋ค, ์ฝํ๋ฆฐ ํ์ฅ ๊ธฐ๋ฅ ์ค findViewbyId๋ฅผ ์ฌ์ฉํ์ง ์์๋ ์๋์ผ๋ก ๋ ์ด์์์ ์ปดํฌ๋ํธ๋ฅผ ๊ฐ์ ธ์์ฃผ๋ ํธ๋ฆฌํ ๊ธฐ๋ฅ์ด ์์๊ณ ๋ฒ๊ฑฐ๋กญ๊ฒ ButterKnife๋ฅผ ์ถ๊ฐํด์ผ ํ ํ์๊ฐ ์์ด์ก์ต๋๋ค. ๊ทธ๋ฐ๋ฐ ์ด๊ฒ๋ณด๋ค ๋ ์ข์ ๊ธฐ๋ฅ์ด ์์์ต๋๋ค.
Using XML
์๋๋ก์ด๋๋ JavaFx์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ ์ด์์์ XML ์ธ์ด๋ก ์์ฑํ์ฌ ์ปดํ์ผ์ ๊ทธ๋ค์ ํ์ฑํ์ฌ ๋ ๋๋งํ์ฌ ์ฌ์ฉ์์๊ฒ ๋ณด์ฌ์ค๋๋ค. ๊ทธ๋์ ์๋๋ก์ด๋ ์ฑ์ ๊ฐ๋ฐํ๋ ค๋ฉด ๋น์ฐ์ XML ์ธ์ด๋ฅผ ์ฌ์ฉํ ์ค ์์์ผ ํ๊ณ ์ด๋ฅผ ์ด์ฉํด์ ๋ ์ด์์์ ์ง์ผ ํ์ต๋๋ค.
์ด์ด์ ์ฝ์ผ์๋ ค๋ฉด ์๋์ ๋ฒํผ์ ํด๋ฆญํด์ฃผ์ธ์.
'Programming' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
GraalVM - R๊ณผ Java ์ฌ์ด (0) | 2019.07.29 |
---|---|
[GP] Spring boot์์ DBMS๋ฅผ ์ฐ๋ํ๋ ๋ฐฉ๋ฒ JPA ๊ณ ๊ธํธ (0) | 2019.02.09 |
GoormEdu Coding Party Season 1 (๊ตฌ๋ฆ ์ฝ๋ฉ ํํฐ ์์ฆ1) ํ๊ธฐ (0) | 2018.06.30 |
[GP] Spring boot์์ REST API ๊ฐ๋ฐ ์์ํด๋ณด๊ธฐ (0) | 2018.05.31 |
SmartDiary - ์์ , ์ง์ถ ๊ธฐ๋ฐํ ๋ค์ด์ด๋ฆฌ ํ๋ก๊ทธ๋จ (0) | 2017.01.01 |