Codelab으로 LiveData transform해보기 - 3. 정리(完)

2023. 5. 23. 00:00·Dev experience/Android
728x90
반응형

Transforming LiveData

  • LiveData에 transformation을 하고 싶다면 Transformations 클래스의 helper 메소드들을 사용한다.
  • Transformations.map 메소드는 LiveData에 데이터를 변경하고 다른 LiveData 객체를 리턴해준다.

Displaying the result of a transformation in a TextView

  • 원본 데이터가 ViewModel의 LiveData로 정의되어 있는지 확인한다.
  • 변수를 정의한다. 어떤 변수가 있다면 Transformations.map 메소드로 transformation을 수행하고 그 값을 변수에 리턴해준다.
val newResult = Transformations.map(someLiveData) { input ->
   // Do some transformation on the input live data
   // and return the new value
}

 

  • 레이아웃 파일이 ViewModel에 대한 <data> 변수를 선언하고 있는지 확인한다.
<data>
   <variable
       name="MyViewModel"
       type="com.example.android.something.MyViewModel" />
</data>

 

  • 레이아웃 파일에 텍스트뷰의 텍스트 속성을 ViewModel.newResult(위에서 예시 코드로 나온)의 바인딩 변수로 설정한다.
android:text="@{SomeViewModel.newResult}"

 

Formatting Dates

  • DateUtils.formatElapsedTime() millisecond 단위를 long 타입으로 가지고, 숫자를 "MM:SS" 문자열 형식으로 지정한다.

 

 

드디어 MVVM 패턴 구현에 필요한 가장 핵심이라 생각했던 LiveData, ViewModel이 포함된
Android Kotlin Fundamentals 5장이 끝이 났다.

 

사실 5장 이전에도 사용해보지 않은 Jetpack 라이브러리들이 있어서 이전 과정들도 봐야하나 고민 중이다.

 

그리고 현재 내가 공부한 Codelab은 더 이상 유지보수되지 않는다고한다.

 

Jetpack Compose 관련 Codelab으로 공부하는 것을 추천하고 있다.

 

구글에서 Jetpack Compose에 힘을 실어주는 듯하다.

(사실 공부해보고 싶긴한데 이거 공부해서 회사에서 적용할 수 있을까? 라는 의문이 크다.)

 

내가 지금까지 연재한(?) Codelab으로 알아보기 시리즈의 5장 원본을 보고 싶은 사람들은 아래 링크를 걸어두도록 하겠다.

https://developer.android.com/courses/kotlin-android-fundamentals/overview?hl=ko#lesson_5_architecture_components

 

Android Kotlin 기초  |  학습 과정  |  Android Developers

Android Kotlin 기초 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Android Kotlin 기초 교육 과정은 Google Developers 교육팀에서 만들었습니다. 이 교육 과정에서는 An

developer.android.com

728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'Dev experience > Android' 카테고리의 다른 글

Codelab으로 Room 알아보기 - 1. Download and inspect the starter app  (0) 2023.06.13
Android Notification channel 설정이 적용안되는 경우  (0) 2023.06.09
Codelab으로 LiveData transform해보기 - 2. Add transformation for the LiveData  (0) 2023.05.20
Codelab으로 LiveData transform해보기 - 1. Add a Timer  (0) 2023.05.19
Codelab으로 DataBinding 알아보기 - 4. 정리(完)  (1) 2023.05.17
'Dev experience/Android' 카테고리의 다른 글
  • Codelab으로 Room 알아보기 - 1. Download and inspect the starter app
  • Android Notification channel 설정이 적용안되는 경우
  • Codelab으로 LiveData transform해보기 - 2. Add transformation for the LiveData
  • Codelab으로 LiveData transform해보기 - 1. Add a Timer
BonusTrack02.dev
BonusTrack02.dev
공부, 일상
  • BonusTrack02.dev
    BonusTrack02.dev
    BonusTrack02.dev
  • 전체
    오늘
    어제
    • 분류 전체보기 (237)
      • Dev experience (85)
        • Android (84)
        • Kotlin (1)
      • Study (62)
        • Kotlin (26)
        • Swift (17)
        • Java (19)
      • 프로그래머스 (68)
      • 주저리주저리 (22)
        • 카페 (5)
        • 음식점 (4)
        • 컨퍼런스 (1)
        • 팝업스토어 (4)
        • 전시회 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    daterangepicker
    coroutines
    안드로이드
    PCCE
    배열
    room
    티스토리챌린지
    오블완
    programmers
    스위프트
    Observer
    viewModelScope
    MVVM
    LiveData
    Material
    코루틴
    Java
    Kotlin
    jetpack
    getNumericValue
    프로그래머스
    CodeLab
    android
    databinding
    ios
    코틀린
    ViewModel
    자바
    aac
    SWIFT
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
BonusTrack02.dev
Codelab으로 LiveData transform해보기 - 3. 정리(完)
상단으로

티스토리툴바