[kotlin] 데이터 바인딩 바인드 어트리뷰트

안녕하세요! 이번에는 코틀린에서 데이터 바인딩과 바인드 어트리뷰트를 사용하는 방법에 대해 알아보겠습니다.

데이터 바인딩이란 무엇인가요?

데이터 바인딩은 안드로이드 앱에서 레이아웃 파일과 액티비티/프래그먼트의 뷰를 런타임에 직접 연결하는 기술입니다. 이를 통해 findViewById() 메서드를 사용하지 않고도 XML 레이아웃의 뷰를 쉽게 참조할 수 있습니다.

데이터 바인딩 라이브러리 추가하기

먼저, build.gradle 파일에 다음 의존성을 추가하여 데이터 바인딩 라이브러리를 프로젝트에 추가합니다:

android {
    ...
    buildFeatures {
        dataBinding true
    }
}

레이아웃에서 바인드 어트리뷰트 사용하기

간단한 레이아웃 XML 파일에서 데이터 바인딩을 사용하는 방법을 살펴보겠습니다.

<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="wrap_content">
       <TextView
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:text="@{user.name}" />
   </LinearLayout>
</layout>

위의 코드에서 @{user.name}은 바인드 어트리뷰트로, user 객체의 name 속성을 참조하고 있습니다.

이제 데이터 바인딩 클래스를 생성하고 실제 데이터를 설정하는 방법을 살펴보겠습니다.

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

마치며

코틀린에서 데이터 바인딩과 바인드 어트리뷰트를 사용하여 XML 레이아웃과 액티비티/프래그먼트를 효율적으로 연결할 수 있습니다. 데이터 바인딩은 코드의 가독성, 유지보수성을 향상시키고 실수를 줄일 수 있는 강력한 도구입니다.

더 많은 정보를 원하시면 안드로이드 공식 문서를 참고해보세요. Android Data Binding Guide