๐ SeSAC์ 'JetPack๊ณผ Kotlin์ ํ์ฉํ Android App ๊ฐ๋ฐ' ๊ฐ์ข๋ฅผ ์ ๋ฆฌํ ๊ธ ์ ๋๋ค.
- Activity
- Service
- ContentProvider
- BroadcastReceiver
์๋๋ก์ด๋์์๋ ์์ 4๊ฐ๋ฅผ ์ปดํฌ๋ํธ
๋ผ๊ณ ๋ถ๋ฅธ๋ค.
๊ทธ ์ค์ Activity
๋ `ํ๋ฉด ์ถ๋ ฅ' ์ ๋ด๋นํ๋ ํด๋์ค์ด๋ค.
๊ทธ๋ฐ๋ฐ ์กํฐ๋นํฐ ๋ด์ ํ๋ฉด ๊ตฌ์ฑ์ ์ ํ๋ฉด ๊ทธ๋ฅ ๋ฐฑ์ ํ๋ฉด๋ง ์ถ๋ ฅ๋๋ค.
์กํฐ๋นํฐ๋ 'ํ๋ฉด ์ถ๋ ฅ' ๋ด๋น์ด์ง ํ๋ฉด ๊ตฌ์ฑ์ ๋ด๋นํ์ง ์์ผ๋๊น.
์๋๋ก์ด๋์์ 'ํ๋ฉด ๊ตฌ์ฑ' ์ ๋ด๋นํ๋ ํด๋์ค๋ฅผ ๋ทฐ (View)
๋ผ๊ณ ๋ถ๋ฅธ๋ค.
View
๋ก 'ํ๋ฉด ๊ตฌ์ฑ' ์ ํ๊ณ , Activity
์์ setContentView() ํจ์
๋ก ํ๋ฉด์ ์ถ๋ ฅํ๋ค.
- TextView : ๋ฌธ์์ด ์ถ๋ ฅ View ํด๋์ค
- ImageView : ์ด๋ฏธ์ง ์ถ๋ ฅ View ํด๋์ค
- EditView : ์ ์ ๊ธ ์ ๋ ฅ View ํด๋์ค
- Button : ๋ฒํผ View ํด๋์ค
์ด ์ธ์๋ ์ ๋ง ๋ง์ ๋ทฐ๋ค์ด ์์ผ๋ฉฐ ๊ณ์ ์ถ๊ฐ๋๋ ์ค์ด๋ค.
์์ ๊ฐ์ด ์กํฐ๋นํฐ์ ์ถ๋ ฅ๋ ์ ์๋ ํด๋์ค๋ค์ด
๋ชจ๋ -> View
<- ๋ผ๋ ํด๋์ค์ ์๋ธ ํด๋์ค์์ ์ ์ ์๋ค. (TextView, ImageView ๋ฑ)
๐ ๋๋ฌธ์ View๋ ์ต์์ ํด๋์ค์ด๋ฉฐ, ๊ทธ๋ฅ ํต์นญ '๋ทฐ' ๋ผ๊ณ ๋ฌถ์ด ๋ถ๋ฅด๋ ๊ฒ์ด๋ค.
๐ ๊ทธ๋ฐ๋ฐ ํน์ดํ๊ฒ ViewGroup
์ผ๋ก ๋ฌถ์ด๋ ํด๋์ค๋ค์ด ์๋ค.
LinearLayout, RelativeLayout ๋ฑ, 'Layout' ์ด ๋ถ์ ํด๋์ค๋ค์ด ์๋๋ฐ,
์ด ํด๋์ค๋ค์ ์์ฒด UI๋ฅผ ๊ฐ์ง์ง ์๋๋ค.
โ ์ฆ, ํ๋ฉด์ ์๋ฌด๊ฒ๋ ์ถ๋ ฅ๋์ง ์๋๋ค.
๋ ์ด์์ ์์ ๋ทฐ๋ค์ ๋ฐฐ์นํ๋ ๊ธฐ๋ฅ์ ๋ด๋นํ๋ค.
์ํํธ์จ์ด ๊ฐ๋ฐ/ํ๋ก ํธ์๋ ์ชฝ์์๋ ์ด๋ฐ ๊ธฐ๋ฅ์ ํด๋์ค๋ฅผ ํํ Container
๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ ํ๋ค.
๐งฉ [์กํฐ๋นํฐ (๋ ์ด์์ {๋ทฐ} ) ]
๋๋์ผ๋ก ํ๋ฉด์ ๊ตฌ์ฑํ๋ค๊ณ ์๊ฐํ๋ฉด ํธํ๋ค.
๐ฌ ์ฐธ๊ณ ๋ก AppCompatActivity()
๋ Activity์ ์๋ธ ํด๋์ค์ด๋ค.
์ข์ ์ ๋ณด ์ป์ด๊ฐ๋๋ค, ๊ฐ์ฌํฉ๋๋ค.