분류 전체보기 1203

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

Android FireStore + Coroutine

안드로이드 Firebase의 FireStore 설정과 코루틴에 대해서 해보겠습니다. 우선 파이어베이스에서 프로젝트 만들고 세팅해놓는 것은 다 알꺼라 생각하니 생략하고 시작하겠습니다. 모르면 여기 참고하시고 https://firebase.google.com/docs/firestore/quickstart Cloud Firestore 시작하기 | Firebase Documentation Catch up on everthing we announced at this year's Firebase Summit. Learn more 의견 보내기 Cloud Firestore 시작하기 이 빠른 시작에서는 Cloud Firestore를 설정하고 데이터를 추가한 후 Firebase Console에서 방금 추가한 데이 fire..

Android(Kotlin) 2021.11.27

Android android:exported 란

가끔 안드로이를 앱을 만들다가 에러가 난 적이 있습니다. 에러 내용이 Android android:exported와 관련된 내용인데, android:exported:true or false로 설정해주니 해결되었는데 이게 뭘까 해서 찾아봤습니다. 우선 구글에서 설명하는 방식은 아래와 같습니다. android:exported이 요소는 다른 애플리케이션의 구성요소로 액티비티를 시작할 수 있는지 설정합니다. 할 수 있으면 "true", 할 수 없으면 "false"입니다. "false"인 경우, 해당 액티비티는 같은 애플리케이션의 구성요소 또는 사용자 ID가 같은 애플리케이션으로만 시작할 수 있습니다. 인텐트 필터를 사용하는 경우 이 요소를 "false"로 설정하면 안 됩니다. 이렇게 설정하고 앱이 액티비티를 호..

Android(Kotlin) 2021.11.27

Enum class

열거형 class인 Enum class에 대해서 알아보겠습니다. enumeration 즉 열거형 클래스인데, 뭘 열거하는지 한번 살펴보겠습니다. 위와 같이 열거해서 할 수 있고 값을 넣어서 사용할 수도 있습니다. 또한 이렇게 값을 변경할 수 있습니다. - 참조 https://juyeop.tistory.com/42 열거형 Enum 클래스 안녕하세요, 오늘은 며칠 전부터 관심을 가지고 공부하게 된 Enum 클래스에 대해 알아보려 합니다. Enum 클래스는 많은 언어들에서 존재하지만 오늘은 Java 언어를 바탕으로 Enum 클래스를 설명하겠 juyeop.tistory.com https://www.youtube.com/watch?v=-1C7Tm6eblA https://www.youtube.com/watch?v=..

Android(Kotlin) 2021.11.14

Android arr module 만들기 및 import

일단 arr module로 만들 프로젝트를 가져와서 id 'com.android.application' 이 부분을 아래와 같이 변경하고 id 'com.android.library' 그런 다음 applicationId 삭제 그 이후 arr 파일 생성 완료 그 다음 이 친구를 다른 프로젝트에 import해서 사용해야 하는데 아래와 같이 사용가능합니다. - 참조 https://singo112ok.tistory.com/19 안드로이드 스튜디오 AAR파일 등록 / how about to "Android studio" insert Module(. AAR) Android Studio 버전 : 3.4.1기준 (4.0.1버전도 동일 확인) 1) File -> Project Structure 2) Modules -> "+..

Android(Kotlin) 2021.11.07