fun main() { val button: View = Button() button.click() } abstract class View { abstract fun click() } class Button: View() { override fun click() { println("Button") } } abstract class는 abstract fun을 가진다. abstract fun의 바디는 구현할 수 없다. fun main() { val button: View = Button() button.click() } open class View { open fun click() { println("View") } } class Button: View() { override fun click() { sup..
fun main() { val name = "Richard" println(name.lastChar()) } // 확장함수 fun String.lastChar(): Char = this[this.length - 1] // 아래와 동일 // fun String.lastChar(): Char = this.get(this.length - 1) // fun String.lastChar(): Char = get(length - 1) 수신 객체 타입(receiver type) : String.lastChar()의 String 수신 객체(receiver object) : this fun main() { val listString = listOf("A", "B", "C") val listNumber = listOf(1..
build.gradle (Module: app) android { dataBinding { enabled = true } kotlinOptions { jvmTarget = "1.8" // viewModels() 사용 } } dependencies { // viewModels() 사용 implementation 'androidx.fragment:fragment-ktx:1.2.5' // ViewPager2 사용 implementation 'androidx.viewpager2:viewpager2:1.0.0' } activity_main.xml fragment_red.xml fragment_green.xml fragment_blue.xml fragment_white.xml fragment_black.xml Ma..
MVVM (Model + View + ViewModel) build.gradle (Module: app) apply plugin: 'kotlin-kapt' // BindingAdapter 사용하기 위함 android { dataBinding { enabled = true } kotlinOptions { // by viewModels() 사용하기 위함 jvmTarget = "1.8" } } dependencies { // by viewModels() 사용하기 위함 implementation 'androidx.fragment:fragment-ktx:1.2.5' } activity_main.xml binding/BindingAdapters.kt package com.jwsoft.kotlinproject.bin..
MVC (Model + View Controller) activity_main.xml View 역할 model/Player.kt package com.jwsoft.model enum class Player { O, X, NULL } model/Cell.kt package com.jwsoft.model data class Cell ( var player: Player ) model/Board.kt package com.jwsoft.model class Board { var currentPlayer: Player = Player.X var winnerPlayer: Player = Player.NULL var cells: Array = Array(3) { Array(3) { Cell(Player.NULL) }..
- Total
- Today
- Yesterday
- ViewModel
- 혀가 길지 않은 개발자
- Android
- Kotlin
- MVVM
- 코틀린
- CoordinatorLayout
- Intent
- James Kim
- 안드로이드
- Design Pattern
- View
- Vue.js #Vue.js + javascript
- ViewPager2
- recyclerview
- XML
- fragment
- Architecture Pattern
- activity
- DataBinding
- java
- ArrayList
- 자바
- Livedata
- handler
- 안드로이드 #코틀린 #Android #Kotlin
- JSONObject
- JSONArray
- TabLayout
- coroutine
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |