반응형
안드로이드 스튜디오 4.1 버전 부터는
kotlin-android-extentions를 사용하지 못한다.
build.gradle를 살펴보면 2가지 밖에 남지 않았다.
plugins {
id 'com.android.application'
id 'kotlin-android'
}
build.gradle에 kotlin-android-extentions를 추가해주고,
Activity 내에서 바로 XML id 값에 접속할 수 있었는데,
안드로이드 공식 문서에서 삭제되었다.
XML을 참조하는 방법은 결국 findViewById() 메소드르 사용해야 한다.
package com.example.bmicalc
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
class KotlinActivity : AppCompatActivity() {
// XML에서 "homeButton"로 id를 정의한 Button 선택
private val homeButton by lazy { findViewById<Button>(R.id.homeButton) }
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_kotlin)
// homeButton 클릭 이벤트 리스너 추가
homeButton.setOnClickListener {
startActivity(Intent(this@KotlinActivity, MainActivity::class.java))
}
}
}
kotlin-android-extentions 가 사라진 이유
kotlin-android-extentions는 내부 캐싱과 반복적인
viewBinding() 함수를 제거해주는 편리한 기능인데,
이게 사라진 이유는 뭘까?
이 편리한 플러그인을 제공하지 않는 이유는,
레이아웃이 몇개 없는 상황에서는 편리하게 사용할 수
있지만, 레이아웃이 여러개가 겹쳐지고, id가
많아지는 상황에서 실수할 여지가 있다는 것이다.
반응형
'Programming' 카테고리의 다른 글
줌 프로그래밍 만드는 방법 클론 코딩 (0) | 2022.03.29 |
---|---|
SpringBoot 웹 애플리케이션 개발 #1 프로젝트 시작 (0) | 2022.03.28 |
자바 배열 선언 2차 배열 0으로 초기화 하는 방법 java.lang.NullPointerException (0) | 2022.03.22 |
Ubuntu NPM node.js install 설치하기 (0) | 2022.03.08 |
Kotlin null 처리하는 방법 (0) | 2022.03.07 |
Kotlin when 문법 사용하는 방법 (0) | 2022.03.07 |
댓글