반응형
View Binding
findViewById 대신에 XML 레이아웃 파일에 있는 ID를 직접 참조할 수 있습니다.
참고: 뷰 결합은 Android Studio 3.6 Canary 11 이상에서 사용할 수 있습니다.
1. build.gradle 에 viewBinding 설정
build.gradle (Module: YourApp.app) 의 파일을 열어서 android { } 부분에 아래 코드를 추가합니다.
android {
...생략...
viewBinding {
enabled = true
}
}
layout 파일의 내용이 다음과 같고, 이름은 activity_main.xml 이라고 했을 때
<LinearLayout ... >
<TextView android:id="@+id/main_name_textview" />
<Button android:id="@+id/main_confirm_button"
android:background="@drawable/rounded_button" />
</LinearLayout>
layout 파일명에 따라서 결합 클래스 이름이 결정됩니다.
지금은 activity_main.xml 이라서 ActivityMainBinding 이 됩니다.
result_profile.xml 이라면 ResultProfileBinding 이 됩니다.
그리고 MainActivity.kt 에서 아래와 같이하면 됩니다.
package com.example.test01
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.example.test01.databinding.ActivityMainBinding
class MainActivity : AppCompatActivity() {
private lateinit var binding: ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater)
val view = binding.root
setContentView(view)
}
}
그러면 layout xml 에서 id 를 이용해서 그대로 사용할 수 있습니다.
binding.mainConfirmButton.setOnClickListener{
binding.mainNameTextview.text = "Clicked!!"
}
[Android] - [Kotlin] 코틀린 기본 문법 1 (변수, 자료형)
[Android] - [Kotlin] 코틀린 기본 문법 2 (배열의 모든 것)
[Android] - [Kotlin] 코틀린 기본 문법 3 (함수)
[Android] - [Kotlin] 코틀린 기본 문법 4 (조건문, 반복문)
[Android] - [Kotlin] 코틀린 기본 문법 5 (배열 응용)
[Android] - [Kotlin] findViewById 대신에 View binding
728x90
반응형
'Android' 카테고리의 다른 글
[Kotlin] 개발할때 알아야할 LifeCycle (0) | 2023.07.24 |
---|---|
[Kotlin] 새로운 화면(Activity) 추가하고 데이터 주고받기 (0) | 2023.07.23 |
[Kotlin] 코틀린 기본 문법 5 (배열 응용) (0) | 2023.07.20 |
[Kotlin] 코틀린 기본 문법 4 (조건문, 반복문) (0) | 2023.07.20 |
[Kotlin] 코틀린 기본 문법 3 (함수) (0) | 2023.07.20 |
댓글