Kotlin

    Android - Kotlin으로 RecyclerView 구현하기

    Android - Kotlin으로 RecyclerView 구현하기

    build.gradle(Moudle) viewBinding true 설정 activity_main.xml item_recycler.xml 아래와 같이 데이터 클래스를 만들어 줍니다. Memo.kt data class Memo(var no: Int, var title: String, var timestamp: Long) AdapterClass도 만들어 줍니다 CustomAdapter.kt import android.view.LayoutInflater import android.view.ViewGroup import android.widget.Toast import androidx.recyclerview.widget.RecyclerView import org.techtown.location.kotlinpro..

    안드로이드 액티비티간 화면 전환 및 데이터 전달 (Intent) - Kotlin

    안드로이드 액티비티간 화면 전환 및 데이터 전달 (Intent) - Kotlin

    MainActivity에서 SubActivity로 전환 해주기 위해서 SubActivity를 만들어 주어야 합니다. 프로젝트 파일에서 왼쪽 클릭을하여 Empty Activity를 생성해줍니다. Activity Name과 Layout Name은 편하실대로 지어주시면 됩니다. Main Activity에서 Sub Activity로 넘어가주기 위해서 버튼을 하나 배치해줍니다. 전환될 Sub Activity도 아래와 같이 배치 해줍니다. 인제 전환될 화면 구성이 완료 되었으니 코드를 작성해 주어야 겠죠? 우선 뷰 바인딩을 위해 아래와 같이 설정 해줍니다. build.gradle (Module)에 들어가서 buildFeatures안에 view Binding true로 설정해줍니다. class MainActivity..

    [Kotlin] - 코틀린 기본 문법 4

    [Kotlin] - 코틀린 기본 문법 4

    fun fun double(x: Int): Int{ return 2 * x } 함수 정의는 fun 키워드를 사용한다. 함수 사용 val result = double(2) 함수 호출 Stream().read() 함수 파라미터는 Pascal notation 을 써서 정의한다. 각 파라미터는 type 이 정의되어야 한다. fun powerOf(number: Int, exponent: Int) { /*...*/ } 파라미터 함수 파라미터는 argument 가 생략 된 경우에 할당되는 해당 파라미터의 기본 값을 가질 수 있다. fun read(b: Array, off: Int = 0, len: Int = b.size) { /*...*/ } 본 값은 type 과 값 사이에 = 를 사용하여 정의한다. overridi..

    [Kotlin] - 코틀린 기본 문법 3

    [Kotlin] - 코틀린 기본 문법 3

    불변형 List 생성하기 fun main(array: Array){ var numbers: List = listOf(1,2,3,4,5) var names: List = listOf("one","two","three") var mixedType = listOf("Hello", 1, 2.45, 's') // 타입 for(number in numbers) print(number) // 12345 println() for(index in names.indices) println("names[$index] = ${names[index]}") // names[0] = one for (index in names.indices) // 짝수 요소만 if(index % 2 == 0) println("names[$index..

    [Kotlin] - 코틀린 기본 문법 2

    [Kotlin] - 코틀린 기본 문법 2

    기본 문법2 (?:, ?., as?, !!, lateinit) 엘비스 ?: 연산자 fun main(args: Array){ var fishFood : Int? = null fishFood = fishFood?.dec() ?: 0 println(fishFood) } fun main(args: Array){ var yts: String? = null fun elvis() { val name: String = yts ?: "YTS" val nameTwo: String = yts ?: return //함수자체를 return 시키도록 만들 수 도 있음 val nameThree: String = yts ?: throw NullPointerException() } } 엘비스 연산자는 널 값을 허용하지 않는 변수에 널..

    [Kotlin] - 코틀린 기본 문법 1

    [Kotlin] - 코틀린 기본 문법 1

    코틀린 기본 문법 reference by Kotlin 공식 문서 Kotlin 구조 package kotlinproject fun main(){ println("Hello World") } .kt 확장자를 가진다. package, import 선언부는 자바와 동일 함수의 fun 키워드로 시작한다. 리턴 타입은 함수명() 뒤쪽에 명시 코틀린은 문장의 끝을 세미콜론으로 명시하지 않음 변수 타입, 정의 및 초기화 데이터 타입에 관계 없는 상수는 val, 변수는 var 로 선언 데이터 타입을 명시하지 않아도 할당 해주는 값에 따라 자동으로 결정됨 val는 자바와 final과 같으므로 다른 값으로 재 할당할 경우 위와 같이 오류가 난다. 위의 경우는 var 키워드로 num 변수를 int 형으로 타입을 정하였는데, ..