본문 바로가기

나의 플랫폼/안드로이드

[Kotlin] BindingAdapter 이용 하기

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

DataBinding을 이용해서 MVVM을 구현하시는 분들이 많으실꺼라 생각 됩니다.

저 또한 열심히 공부중에 있는데요.


그 중에 Kotlin 에서 BindingAdapter를 어떻게 사용하는지 공유 해드릴까 합니다.


기본적으로 DataBinding에서 BindingAdapter가 어떻게 쓰이는지는 아래 내용을 참고 하시거나,

구글링 해도 많은 자료 들이 있습니다.

http://gogorchg.tistory.com/entry/AndroidDataBinding-ImageView-src%EC%97%90-%EC%97%B0%EB%8F%99-%ED%95%98%EA%B8%B0-%ED%95%A8%EC%88%98-%EC%97%B0%EA%B2%B0


## Java


public class ImageBindingModel {
@BindingAdapter({"imageRes"})
public static void imageRes(ImageView view, int imageRes) {
view.setImageResource(imageRes);
}
}


##Kotlin

object ImageBindingModel {
@JvmStatic
@BindingAdapter("imageRes")
fun imageRes(view: ImageView, imageRes: Int) {
view.setImageResource(imageRes)
}
}


이렇게 바꿔주시면 됩니다.

크게 다른 점이 없어서 설명은 안드렸는데요.


딱히 말씀 드리면, 


1. class 대신 object

2. @JvmStatic Annotation 추가


정도 일듯 하네요.


참고하세요.