Android 3

[Android] LiveData, 라이브 데이터

1. LiveData : LiveData 도 DataBinding과 마찬가지로, Jetpack 라이브러리 중 하나이며 클린아키텍쳐 설계 및 MVVM 등의 디자인 패턴 설계에도 많이 쓰이는 기술이다. 생명주기를 알고있고, 옵저버 패턴을 이용해서 관찰하고 있는 데이터의 변화를 감지할 수 있다. LiveData의 정의는 공식 문서에서 다음과 같다. LiveData는 관찰 가능한 데이터 홀더 클래스입니다. 관찰 가능한 일반 클래스와 달리 LiveData는 수명 주기를 인식합니다. 즉, 활동, 프래그먼트, 서비스 등 다른 앱 구성요소의 수명 주기를 고려합니다. 수명 주기 인식을 통해 LiveData는 활동 수명 주기 상태에 있는 앱 구성요소 관찰자만 업데이트합니다. 즉, LiveData 는 관찰이 가능하고 Lif..

android 2023.08.27

[Android] DataBinding, 데이터바인딩

1. Databinding 이란? : DataBinding(데이터바인딩)은 간단하게 xml파일에 Data를 연결(binding)해서 사용할 수 있게 도와주며 Android JetPack 라이브러리중 하나이다. 이미 안드로이드 개발에 많이 사용되고 있는 기능이다. findViewById 를 통해서 view를 가져오지 않아도 된다. 연결된 데이터가 변할 때, view에 쉽게 변경된 데이터를 반영할 수 있다. LiveData, ViewModel 등과 함께 사용할 때 빛을 발한다. (이번 글에서 정리할 데이터 바인딩 프로젝트는 실무에서 쓰이는 수준이 아닌, 아주 기초적인 사용법만을 다루는 예제이다.) 2. Databinding 설정 먼저 샘플용으로 프로젝트를 생성한 후, app 수준의 build.gradle 에..

android 2023.08.25

[Android Compose] Text

Android Jetpack Compose에 대해 공부하면서, 공부한 내용들을 나중에 바로바로 찾아보기 위해 정리를 해보려고 한다. 먼저 Text에 대해 알아보면, Text에 커서를 올려보면 다음과 같은 옵션들이 있는 것을 알 수 있다. color : 텍스트의 색상을 설정 fontSize : 텍스트 폰트 크기 설정 fontStyle : 텍스트 폰트 스타일 설정 fontWeight : 텍스트 폰트의 굵기 설정 fontFamily : 폰트 종류 설정 letterSpacing : 텍스트의 글자 간의 간격을 조절 textDecoration : 텍스트에 밑줄 등의 옵션을 설정 textAlign : 텍스트 정렬 lineHeight : 줄간격 설정 overflow : overflow가 일어날때 어떻게 처리할지 설정 ..

compose 2023.07.20