본문 바로가기

Rxjava, Rxkotlin

Databinding 이란

Databinding 이란 XML에 있는 레이아웃요소들을 FindViewById를 하지 않고 자동으로 접근이 가능하게 해준다.

Databinding을 위한 기본 설정

1. gradle에 dataBinding enabled = true

2. XML에 <layout> 추가 

3. var binding = DataBindingUtil.setContentView(this, R.layout.activity_main) as ActivityMainBinding

   var binding = DataBindingUtil.inflate(this, R.layout.fragment) as FragementBinding

   var binding = DataBindingUtil.bind(itemView) as ViewBinding

Databinding을 도와주는 Observable -> 변경된 데이터를 XML로 전달해준다.

데이터바인딩의 강점은 데이터가 변경될때 이를 자동으로 알려줘 뷰를 갱신시킬수있다.

Two-way binding 

Model에 있는 것을 UI에 주입할뿐만 아니라 UI에 있는 값을 받아서 처리해야하는 경우