안드로이드/공부

안드로이드 Room,LiveData,ViewModel 예제(Codelaps)-6

바코더 2020. 5. 5. 19:58

6. TASK 4: Use LiveData

https://codelabs.developers.google.com/codelabs/android-training-livedata-viewmodel/#5

 

  데이터를 표시하거나 다른 방법으로 데이터를 사용할때 일반적으로 데이터가 변경될 때 조치를 취하기 위해서는 데이터가 변경될때 반응할 수 있도록 데이터를 관찰해야 한다는 뜻이 됩니다.

 

데이터 옵저버를 위한 lifecycle library 라이브러리인 LiveData, 는 당신의 앱이 데이터 변경시 반응 되도록 도와줍니다. 만일 LiveData 타이을 return value로 사용하면 Room은 일반적으로 LiveData가 업데이트하는데 필요한 모든 코드를 생성합니다.

 

4.1 Return LiveData in WordDao

 WordDao 인터페이에서 LiveData를 리턴하도록 LiveData로 변경하도록 합시다.

즉 기존의 getAllWord() 함수를 

   @Query("SELECT * from word_table ORDER BY word ASC")
    LiveData<List<Word>> getAllWords();

 이렇게 LiveData에 감싸게 변경하는 것입니다.