본문 바로가기

안드로이드22

MVVM에서 viewModel 이벤트를 받을 수 있는 방법-3 MVVM에서 viewModel 이벤트를 받을 수 있는 방법 SharedFlow, Sealed class로 이벤트 처리하기 SharedFlow & Sealed class & LifeCycle로 이벤트 처리하기 EventFlow & Sealed class Lifecyle로 이벤트 처리하기 이전 블로그에서는 아래의 내용에 대해 알아봤습니다. LiveData만 사용해서 이벤트 처리하기 LivieData에 EventFlow를 래핑해서 처리하기 SingleLiveData로 이벤트 처리하기 StateFlow, SharedFlow로 이벤트 처리하기 MVVM에서 viewModel 이벤트를 받을 수 있는 방법-1 MVVM에서 viewModel 이벤트를 받을 수 있는 방법 LiveData만 사용해서 이벤트 처리하기 Livi.. 2023. 4. 1.
코틀린에서 abstract 클래스는 무엇이고 어떻게 사용할까? 코틀린에서 abstract 키워드는 다음과 같은 특성을 갖습니다. 추상 클래스는 일반적인 클래스와는 달리 객체를 직접 생성할 수 없습니다. 추상 메서드는 구현이 없이 선언만 되어 있습니다. 그렇기 때문에 abstract는 다음과 같은 상황에서 주로 사용합니다. 추상 클래스나 추상 메서드를 정의할 때 사용됩니다. 추상 클래스 및 메서드 정의 예시 추상 클래스 및 메서드는 다음과 같이 상속을 통해서만 사용할 수 있습니다. // 추상 클래스 선언 abstract class Shape { // 추상 메소드 선언 abstract fun draw() } // Shape 클래스를 상속받는 하위 클래스 class Circle : Shape() { override fun draw() { println("원을 그립니다.".. 2023. 3. 30.
MVVM에서 viewModel 이벤트를 받을 수 있는 방법-1 MVVM에서 viewModel 이벤트를 받을 수 있는 방법 LiveData만 사용해서 이벤트 처리하기 LivieData에 EventFlow를 래핑해서 처리하기 SingleLiveData로 이벤트 처리하기 StateFlow, SharedFlow로 이벤트 처리하기 SharedFlow, Sealed class로 이벤트 처리하기 SharedFlow & Sealed class & LifeCycle로 이벤트 처리하기 EventFlow & Sealed class Lifecyle로 이벤트 처리하기 프로젝트 셋업 간단하게 어떻게 프로젝트를 셋업했는지 설명하겠습니다. UI를 다음과 같이 구성하고 다음과 같은 동작을 실시하게 했습니다. 각 버튼을 클릭한다. 각각의 liveData 또는 flow 변수에 데이터를 삽입한다. 2.. 2023. 3. 26.
안드로이드 매니페스트(AndroidManifest)의 역할은 무엇일까 안드로이드 매니페스트 파일은 무엇일까? 앱 구성 요소(Activity, Broadcast, Service, Provider)를 정의한 파일 앱이 요구하는 모든 권한을 식별 앱이 요구하는 최소 API을 선언 앱에서 요구하는 하드웨어 및 소프트웨어 기능(카메라, 블루투스 등)을 선언 앱이 링크되어야 하는 API 라이브러리(Google Maps 라이브러리 등)를 선언 구성 요소 선언 AndroidManifest에서 앱의 구성 요소에 대해 정의할 수 있습니다. 예를 들면 다음과 같은 선언을 할 수 있습니다. 이처럼 안드로이드 구성 요소를 정의해야 합니다. 요소 요소 요소 요소 앱 별 언어 설정 Android13부터 앱별 언어 설정을 AndroidManifest에서 실시할 수 있습니다. 1. res/xml/loc.. 2023. 3. 22.