코틀린으로 작성한 안드로이드 fragment에서 데이터 바인딩 유틸 사용하기
코틀린으로 작성한 안드로이드 fragment에서 데이터 바인딩 유틸 사용하기
오놀은 activity와 다르게 fragment에서 데이터 바인딩 유틸을 사용하여 xml에서 id를 가져와보겠습니다.
클래스 생성
1
2
3
class ProductReportFragment : Fragment(){
}
android.support.v4.app.Fragment된 Fragment() 메소드를 상속받습니다.
lateinit
1
lateinit var bind:FragmentProductReportBinding
코틀린에는 lateinit 키워드가 있으므로 초기화를 지연시키면서 전역에 코드를 위치하여 향후 다른 함수들에서도 사용할 수 있게 합니다.
onCreateView 메소드
1
2
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
}
onCreateView 메소드를 오버라이드해줍니다.
fragment에서 사용할 뷰를 만드는 역할을 해주는 메소드입니다.
DataBindingUtil.inflate
1
bind = DataBindingUtil.inflate(inflater,R.layout.fragment, container, false)
뷰를 얻기위해 바인드를 생성하고 반환합니다.
완성 코드
1
2
3
4
5
6
7
8
9
10
class Fragment : Fragment(){
lateinit var bind:FragmentBinding
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
bind = DataBindingUtil.inflate(inflater,R.layout.fragment, container, false)
return bind.root
}
override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState)
}
}
This post is licensed under CC BY 4.0 by the author.