Android Study

Android Study(data binding)

Box Maker 2023. 4. 10. 20:45

1. Data Binding

  • DataBinding(데이터바인딩)은 간단하게 xml파일에 Data를 연결(binding)해서 사용할 수 있게 도와주며 Android JetPack 라이브러리의 하나의 기능 입니다.
  • findViewById를 사용하지 않아도 되며 보통 MVVM 패턴을 구현 할 때 "LiveData"와 함께 거의 필수적으로 사용합니다.
  • 즉, 데이터바인딩은 애플리케이션 로직과 레이아웃을 binding하는 데 필요한 코드를 최소화하여 코드가 줄어들게 됩니다.

 

1) 기본 사용방법

1-1 build.gradle(Module :app) 파일에 databinding요소를 추가한다.

android {
...
	buildFeatures {
    	  dataBinding true
    }
}

 

1-2  binding을 사용하는 xml 리소스 파일 수정

<layout> 아래에 data를 추가한다.

<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools">

    <data>

    </data>

</layout>

 

1-3 MainActivity.java에서 binding하기위해 수정

DataBindingUtil class 의 객체를 생성하고, 기존의 setContentView() 를 DataBindingUtil.setContentView() 로 대체한다.

private ActivityMainBinding binding;

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
	binding = DataBindingUtil.setContentView(this, R.layout.activity_main);

이후부터는 위젯을 findViewId()를 사용하지않아도 가져올 수 있습니다.