[kotlin] Data Binding 라이브러리 사용법

안드로이드 개발에서 UI와 데이터 모델 간의 결합을 간소화하는 방법 중 하나로 Data Binding 라이브러리를 사용하는 것이 있습니다. Data Binding 라이브러리를 사용하면 XML 레이아웃과 데이터 모델을 연결하여 UI 요소를 업데이트하는데 필요한 코드를 감소시킬 수 있으며, 앱 성능을 향상시킬 수 있습니다.

Data Binding 라이브러리 사용하기

Data Binding 라이브러리를 사용하려면 먼저 모듈 레벨의 build.gradle 파일에 다음과 같이 의존성을 추가해야 합니다.

android {
    ...
    buildFeatures {
        dataBinding true
    }
}

dependencies {
    ...
    implementation 'androidx.databinding:databinding-runtime:4.0.1'
}

의존성을 추가한 후에는 XML 레이아웃 파일에 다음과 같이 Data Binding을 활성화할 수 있습니다.

<layout xmlns:android="http://schemas.android.com/apk/res/android">
    <data>
        <variable
            name="user"
            type="com.example.User" />
    </data>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@{user.firstName}" />
    </LinearLayout>
</layout>

데이터 모델과 연결하기

XML 레이아웃과 데이터 모델을 연결하려면 다음과 같이 액티비티에서 Data Binding을 초기화하고 데이터를 설정해야 합니다.

val binding: ActivityMainBinding = DataBindingUtil.setContentView(this, R.layout.activity_main)
val user = User("John", "Doe")
binding.user = user

데이터 바인딩 라이브러리의 장점

Data Binding 라이브러리를 사용하면 안드로이드 앱의 UI와 데이터 모델을 효율적으로 관리할 수 있으며, 앱의 성능과 유지보수성을 향상시킬 수 있습니다.

참고 자료