Android Jetpack 104

Android View에 대한 접근 - 4 (Databinding with DataClass)

단반향 바인딩(One Way Binding) DataBinding을 데이터에 연결하는 작업을 한번 해보겠습니다. Two Way 바인딩이라고, 양방향에서 결합해주는 방법도 있는데, 이 부분은 ViewModel과 LiveData를 설명한 뒤에 설명하는게 좋을 것 같기 때문에, 이번에는 단한향 데이터 바인딩에 대해서 알아보겠습니다. 일단 데이터를 넣어줄 DataClass를 한번 만들어줍니다. 저는 DogDataClass라고 했습니다. 이렇게 해주고 xml파일에 DogDataClass를 연결해줍니다. 이전에는 태그로만 감쌋는데, 다르게 중간에 를 추가해주고, 데이터 태그 안에 을 선언해줍니다. 로 추가된 부분은 아래와 같습니다. name은 임의로 사용한 부분에 붙여주고, type부분에는 file path를 적어..

Android Jetpack 2021.12.15

Android View에 대한 접근 - 3 (databinding)

자, 이전시간에 ViewBinding까지 봤습니다. 이번에는 DataBinding을 살펴보도록 하겠습니다. ViewBinding과 마찬가지로, findViewById를 대체해서 쉽게 View에 접근할 수 있는데, 약간 좀 더 귀찮은 작업이 있습니다. 하지만, 여러 기능들도 있으니 한번 잘 살펴보시면 좋을 것 같습니다. 일단 어떻게 사용하는지부터 간단하게 한번 보겠습니다. Activity에서 사용법 viewbinding에서와 마찬가지로 gradle에서 databinding을 선언해줍니다. 그 다음 Activity에서 사용 방법을 한번 알아보겠습니다. ViewBinding과는 조금 방법이 다른데 xml파일을 조금 수정해주는 부분이 있습니다. 일단 xml을 파일을 보면 위 아래로 이라는 태그로 감싸져 있습니다..

Android Jetpack 2021.12.14

Android View에 대한 접근 - 2 (ViewBinding)

findByViewId와, Kotlin-extensions를 대체하라고 구글에서 권장하는 viewbinding과 databinding에 대해서 알아보겠습니다. 일단 kotlin-extensions를 대체해서 쓰라고 한 것은 viewbinding입니다. 어떻게 쓰는지 한번 보고 가보겠습니다. ViewBinding 우선 사용을 위해 gradle에 추가해주고 Activity에서는 아래와 같이 사용합니다. 구글 공식문서에서는 아래와 같이 설명하고 있습니다. 활동에 사용할 결합 클래스 인스턴스를 설정하려면 활동의 onCreate() 메서드에서 다음 단계를 따릅니다. 생성된 결합 클래스에 포함된 정적 inflate() 메서드를 호출합니다. 그러면 활동에서 사용할 결합 클래스 인스턴스가 생성됩니다. getRoot()..

Android Jetpack 2021.12.11

Android View에 대한 접근 - 1 (findViewById, Kotlin Extensions)

안드로이드에서 View에 접근하는 방법은 매우 다양합니다. 여기에서 설명드릴 방법은 4가지입니다. 1. findViewById 2. Kotlin Extension 3. ViewBinding 4. DataBinding 이렇게 4가지를 사용할 수 있습니다. 하나씩 살펴보겠습니다. 1. findViewById 이 부분은 굉장히 익숙할 것입니다. 간단하게 버튼 4개를 findViewById 를 통해서 가져오는 예제를 작성해보겠습니다. 위의 View를 Activity에서 가져와서 사용을 한다면 이렇게 사용할 것입니다. 자, 그런데 여기쯤에서 의문이 하나 듭니다. 버튼이 100개라면 저 findViewById를 100번 만들어야 하는거야? 이거 좀 다른 아름다운 방법 없어? 라는 생각이 강하게 들기 시작합니다. 2..

Android Jetpack 2021.12.11