본문 바로가기

전체 글29

[Android] OnBackPressed() Deprecated, 어떻게 할까? onBackPressed() 함수란?Compose 로 개발되었거나 View 방식으로 개발되었더라도 최근에 개발된 안드로이드 코드를 접했다면 보기 힘든 함수이다. 물론 최근에는 Compose 로 대부분 개발하는 추세이기 때문에 위 함수를 아예 접할 기회가 없을지도 모르지만,어느 회사던 Lagacy 한 프로젝트는 남아있기 마련이고, 이러한 프로젝트를 유지보수 해야할 일도 빈번하다(필자의 이야기다...) onBackPressed() 함수는 사용자가 네비게이션 바에 위치한 "시스템 뒤로가기" 버튼을 클릭했을 때 혹은 뒤로가기 제스처를 통해 호출되는 함수이다. 우리는 이 함수를 오버라이드 하여 뒤로가기가 눌렸을때의 동작을 변경 할 수 있었다.class MainActivity : AppCompatActivity().. 2025. 4. 2.
[Android Compose] Compose 처음부터 공부하기 - 1 Compose 란?Jetpack 라이브러리의 의 일부선언적 UI 접근방식을 사용Xml 방식의 기존 Android 에서는 View 가 UI 의 구성요소Compose 에서의 UI 구성요소는 @Composable 이 붙은 함수가 UI 구성요소가 된다.@Composable@Composable 이 붙은 함수가 생성하는 UI 부분이 어떻게 생겼는지를 설명하는 함수아무것도 반환하지 않음컴파일러는 @Composable 어노테이션을 통해 데이터를 UI 로 변환하게 되어있다는 것을 알 수 있다.@Composable 함수에 parameter 를 받을 수 있고, 이를 사용하여 UI 를 구성할 수 있다.기본적으로 행/열 레이아웃을 사용하여 하위 요소를 화면에 배치하는 방식으로 UI 구성한다.@Composable 이 그린 UI .. 2025. 2. 11.
[Android] Fragment Navigation - 2 (Using Kotlin DSL) 이전 포스팅인 [Android] SAA 와 Fragment Navigation - 1 (XML Based Graph) 에서 이어진다. https://gangglion.tistory.com/entry/Android-Fragment-Navigation-1-XML-Based-Graph [Android] SAA 와 Fragment Navigation - 1 (XML Based Graph)SAA?Fragment Navigation 에 대해 다루기 이전에 SAA 의 개념에 대한 이야기이다. 지금은 대부분 Compose 방식으로 넘어갔지만, Compose 등장 이전 Xml 방식으로 UI 를 작성하고 Activity, Fragment 들로 구성하였을gangglion.tistory.com 개요Android Docs 의 .. 2024. 12. 26.
[Android] SAA 와 Fragment Navigation - 1 (XML Based Graph) SAA?Fragment Navigation 에 대해 다루기 이전에 SAA 의 개념에 대한 이야기이다. 지금은 대부분 Compose 방식으로 넘어갔지만, Compose 등장 이전 Xml 방식으로 UI 를 작성하고 Activity, Fragment 들로 구성하였을때 등장한 개념이다.Single Activity Architecture 의 약자로서, 앱 내에 1개 혹은 아주 적은 수의 Activity 만을 두고 나머지 화면을 Fragment 로 구성하는 방식이다. Activity 로 구성할 경우 화면 전환이 Fragment 에 비해 비교적 간편하다고 느낄 수 있는데, 왜 이런 방법을 써야 할까? Fragment 는 Activity 보다 가볍기 때문에 동일한 화면 Flow 를 Activity 만으로 구성하는 것보.. 2024. 12. 23.
[Kotlin] Sealed Class / Interface 등장 배경카페에 주문이 들어왔다고 가정한다. 여러가지 과정이 있겠지만 크게알바생은 손님의 주문을 받는다.알바생은 손님이 주문한 음료를 만든다.알바생은 만들어진 음료를 손님에게 준다.의 과정으로 진행될 것이다. 이때 알바생을 Staff 클래스, 알바생이 해야 할 행동을 Staff 를 상속한 클래스로 표현하면 아래와 같다.open class Staff()class GetOrder : Staff()class MakeOrder : Staff()class GiveOrder : Staff()이때 각 단계별로 알바생의 상태를 확인하는 getStaffStatus(staff: Staff) : String 함수를 만들어 알바생의 상태에 따라 어떤 상태인지 확인한다면 다음과 같이 표현할 수 있을 것이다.fun getStaf.. 2024. 12. 10.
[Android] DI(Dependencies Inject) 와 Hilt 라이브러리 이 글은 Android Developers 공식 문서를 기반으로 내용을 정리한 글임. 공식 문서 Dependencies Inject 원문 글 Android의 종속 항목 삽입  |  Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. Android의 종속 항목 삽입 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 종속 항목 삽입(DI)은 프로그래developer.android.com 종속 항목 삽입이란?DI(Dependencies Inject) 라고 하는 기법으로서, 앱 아키텍처를 구성하는데 있어 중요함. 종속 항목 삽입을 통해1. 코드 재사용 가능2. 리펙터링 편의성 3. 테스트 편의성의 이점을 누릴 수 있음 클래스에는.. 2024. 11. 22.