본문 바로가기

Android

Fragment에서 DataBinding 사용하기

1) App 수준 build.gradle에 다음을 추가

android{
	...
    dataBinding{
       enabled = true
    }
    ...
}

2) Fragment인 경우

- 원래는 이런 코드였는데...

View root = inflater.inflate(R.layout.fragment_dict, container, false);

- Fragment명이 DictFragment인 경우 Fragment와 연결된 layout의 명칭이 dict_fragment.xml이면 FragmentDictBinding으로 명명하여 바인딩 처리

-  결국 data binding을 사용하려면 layout xml 파일의 기존 내용을 <layout>....</layout>으로 감싸게 되는데, 이것을 가지고 binding 객체의 이름을 지정하는 것임

private FragmentDictBinding binding;

public View onCreateView(@NonNull LayoutInflater inflater,
                         ViewGroup container, Bundle savedInstanceState) {
    binding = DataBindingUtil.inflate(inflater,R.layout.fragment_dict, container,false);
    View root = binding.getRoot();
    ...
    
    return root;
}