[kotlin] 데이터 바인딩 컨버터

코틀린에서 데이터 바인딩은 뷰와 모델 사이의 데이터를 쉽게 바인딩하는 데 도움을 주는 라이브러리입니다. 때때로 데이터를 표시하는 방식을 커스터마이징해야 할 때가 있습니다. 이때 데이터 바인딩 컨버터를 사용하여 데이터를 원하는 형식으로 변환할 수 있습니다.

데이터 바인딩 컨버터란?

데이터 바인딩 컨버터는 데이터를 원하는 형식으로 변환할 수 있도록 도와주는 도구입니다. 예를 들어, 날짜를 다른 형식으로 변환하거나 숫자를 퍼센트 형식으로 표시하는 등의 작업을 수행할 수 있습니다.

데이터 바인딩 컨버터 사용하기

코틀린에서 데이터 바인딩 컨버터를 사용하는 방법은 간단합니다. 먼저, 데이터 바인딩 라이브러리를 프로젝트에 추가한 다음, @BindingAdapter 어노테이션을 사용하여 컨버터를 정의합니다.

예를 들어, 날짜를 “yyyy-MM-dd” 형식으로 변환하는 컨버터를 정의해보겠습니다.

@BindingAdapter("dateFormat")
fun bindDateFormat(textView: TextView, date: Date) {
    val formattedDate = SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()).format(date)
    textView.text = formattedDate
}

이제 XML 파일에서 이 컨버터를 사용할 수 있습니다.

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:dateFormat="@{viewModel.date}"
    />

위 예제처럼 app:dateFormat 속성을 사용하여 데이터를 원하는 형식으로 표시할 수 있습니다.

결론

코틀린에서 데이터 바인딩 컨버터를 사용하면 데이터를 커스텀 형식으로 변환하여 표시할 수 있습니다. 이를 통해 뷰와 모델 사이의 데이터 표현을 더욱 다양하고 유연하게 할 수 있습니다.

참고 자료: