2011๋ ์ ํ์ด๋์ 2017๋ ์ ์๋๋ก์ด๋์ ์ ์ฉ๋จ(Java๋์ฒด์ ).
1. Kotlin ์ฅ์
1) ๋ ์์ ์ฑ
2) ๊ฐ๊ฒฐํ ์ฝ๋
3) ์ธ๋ฏธ์ฝ๋ก ์๋ต
4) ๋๋ค์
5) ์๋๋ก์ด๋ ๊ธฐ๋ณธ ์ธ์ด
[The ์น์ ํ ์ฝํ๋ฆฐ ์ฑ ํ๋ก๊ทธ๋๋ฐ] ๊ฐ์ ์ปค๋ฆฌํ๋ผ
์ฒซ์งธ ๋ง๋น. ๋ง๋ณด๊ธฐ๋ก ์ฑ ๋ง๋ค์ด๋ณด๊ธฐ
๋์งธ ๋ง๋น. ์ฑ์ ํ๋ฉด์ ๋ง๋ค๋ฉด์ ์ฝํ๋ฆฐ ๊ธฐ๋ณธ๊ฐ๋ ์ตํ๊ธฐ
์ ์งธ ๋ง๋น. ์ํ ์ฑ ๋ง๋ค๊ธฐ
๋์งธ๋ง๋น. ์ฑ์ ํ๋ฉด์ ๋ง๋ค๋ฉด์ ์ฝํ๋ฆฐ ๊ธฐ๋ณธ๊ฐ๋ ์ตํ๊ธฐ
๋์งธ๋ง๋น 1์ฅ
[Android Studio ๊ธฐ๋ณธ ์ฉ์ด ์ ๋ฆฌ]
- activity xml ํ์ผ: desigin ํ๋ฉด, blueprint ํ๋ฉด
- Gradle ํ์ผ: build.gradle(Project: Basic), build.gradle(Module: Basic.app)
[์ฝ๋ ์์ฑ ์ , ์ค๋น์ฌํญ]
1) build.gradle(Module: Basic.app) ํ์ผ์ plugins ๋ถ๋ถ์ ์๋ kotlin ๊ตฌ๋ฌธ ์ถ๊ฐ.
plugins{
id 'com.android.application'
id 'kotlin-android'
id 'kotlin-android-extensions'
}
2) Setting ์ฐฝ์์ auto import -> Kotlin ์ชฝ ์ฒดํฌ์ฒดํฌ. -> sync now ๋๋ ์ฝ๋ผ๋ฆฌ ๋ฒํผ์ผ๋ก ๋ณ๊ฒฝ์ฌํญ ๋ฐ์.
[์ฝ๋ ๋์ ๊ณผ์ ]
: ์ฑ ํ๋ฉด์ ๋์ธ widget & layout์ id๋ก ์์ค์ฝ๋์์ ์ฐ๊ฒฐ๋๋ค.
1) xml ํ๋ฉด์ button ๋ฑ์ UI ์์ดํ
์ ํ๋ ๋ง๋ค๋ฉด id๊ฐ ๋ถ์ฌ๋จ.
2) ์ฑ์ ์คํํ ๋ UI๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ๊ฐ์ฒดํ๋จ. (์ธํ๋ ์ด์
. ๋ฉ๋ชจ๋ฆฌ ๊ฐ์ฒดํ.)
3) ์์ค์ฝ๋์์ id๋ก ์ฐพ์์ ๊ฐ์ฒด์ ๊ธฐ๋ฅ์ ๋ถ์ฌํจ.
Tip. xml์์ ๋ง๋ ๊ฐ์ฒด์ id๋ฅผ ์ฐ๊ณ import ํด์ค์ผ ํจ...! (import kotlinx.android.synthetic.main.activity_main.* ์ถ๊ฐ)
Java์์๋ ๋ณ์๋ฅผ ์ ์ธํ๊ณ findViewById๋ก ์ฐพ์์๋๋ฐ Kotlin์์๋ import๋ฌธ์ผ๋ก ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐ๊ฐ ๊ฐ๋ฅํ๋ค. ๊ฑ id๋ฅผ ์ ๋ ฅํด์ฃผ๋ฉด ์๋์ผ๋ก ์ฐ๊ฒฐํด์ฃผ๋ ๋งค์ฐ ๊น๋ด:)
[์๋ฌ ํ์ธ ๋ฐฉ๋ฒ]
์ฝ๋์๋ฌ๋ ๋ฐ๋ก ํ์ธ ๊ฐ๋ฅํ๋ฐ, ์คํํ์ ๋ ์๋ฌ๊ฐ ๋๋ค๋ฉด(๋น์ ์ ์ข ๋ฃ) Logcat์์ ํ์ธ.
[Layout ์ข ๋ฅ์ ์์ฑ]
- LinearLayout: ์ธ๋ก or ๊ฐ๋ก๋ก ๋ฐฐ์นํ ์ ์๋ ๋ ์ด์์. ๋ฐ์ค ๋ ์ด์์์ด๋ผ๊ณ ๋ ๋ถ๋ฆ.
- ์์ฑ
1) Orientation(๋ฐฉํฅ): Vertical Layout(์ธ๋ก๋ก ์๊ธฐ) vs Holizontal Layout(๊ฐ๋ก๋ก ์๊ธฐ)
2) Height, Width: wrap_content(์๊ธฐ ํฌ๊ธฐ๋งํผ ์ฑ์ฐ๊ธฐ) vs match_parent(๋ถ๋ชจํฌ๊ธฐ๋งํผ ์ฑ์ฐ๊ธฐ)
๋์งธ๋ง๋น 2์ฅ
1. ? ๊ธฐํธ๋ ์ด๋ค ์๋ฏธ๋ฅผ ๊ฐ๊ณ ์๋๊ฐ.
[๋ณ์๋ฅผ ๋ง๋๋ ํ์]
ํ์ | var <๋ณ์์ด๋ฆ>:<์๋ฃํ> = <์ด๊ธฐ๊ฐ> |
์์ | var name:String = "" |
...ing....
'๐ฑ App Development Study > Android' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Android] View source code of .aar file (0) | 2024.02.07 |
---|---|
Android Gradle Plugin ๊ธฐ๋ณธ ์์ฑ ํ์ผ ๋ถ์ (1) | 2024.01.05 |
[Gradle] Android Studio Gradle Version (0) | 2023.12.07 |
[Android] AVD ์ apk ์ค์นํ๊ธฐ ( window, mac, Linux ) (0) | 2023.08.17 |