안드로이드

안드로이드 android fragment databinding 하는 방법

알통몬_ 2017. 11. 29. 18:24
반응형


공감 및 댓글은 포스팅 하는데

 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 

도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 

만들어 나가겠습니다^^

 


이번 포스팅에서는 간단하게 알아보고 끝내겠습니다.


바로 안드로이드 프래그먼트(Fragment)에 

데이터바인딩(DataBinding) 하는 방법입니다.


Activity 에 하는 방법은 간단한데요.


Fragment 에 하는 방법 또한 간단합니다.


먼저 프래그먼트에 들어갈 레이아웃이 필요하겠죠?

1
2
3
4
5
6
7
8
9
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
 
    <android.support.constraint.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
 
    </android.support.constraint.ConstraintLayout>
</layout>
cs


[광고 보고 가시죠!]




[감사합니다!]


그리고 Fragment 를 상속받는 CustomFragment를 만듭니다.

DataBinding을 사용하지 않았을 경우는 이렇게 사용하는데요.

1
2
View view = inflater.inflate(R.layout.fragment_setup, container, false); 
return view;
cs


DataBinding을 사용하면 아래와 같이 사용합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class SetupFragment extends Fragment {
 
    FragmentSetupBinding binding;
 
    @Nullable
    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        binding = DataBindingUtil.inflate(
                inflater, R.layout.fragment_setup, container, false);
        View view = binding.getRoot();
        //here data must be an instance of the class MarsDataProvider
        return view;
    }
}
cs


프래그먼트는 onCreate()가 아닌 onCreateView() 안에 레이아웃을 inflate합니다.


별로 어렵지 않죠?


이상입니다. 감사합니다.


반응형