반응형 ViewModel2 Hilt를 사용한 ViewModel Hilt를 사용하여 ViewModel을 간단하게 사용하기 위해 다음과 같이 사용하면 됩니다. @HiltViewModel class ExampleViewModel @Inject constructor( private val savedStateHandle: SavedStateHandle, private val repository: ExampleRepository ) : ViewModel() { ... } 그리고 호출은 @AndroidEntryPoint class ExampleActivity : AppCompatActivity() { private val exampleViewModel: ExampleViewModel by viewModels() ... } 그런데 위와같이 by viewModels()하면 view.. 2021. 12. 3. Android - ViewModel ViewModel이란 액티비티와 프래그먼트에서 사용되는 UI관련 데이터를 보관하고, 관리하기 위해 디자인 되었습니다. 왜 UI 데이터를 보관하고 관리하기 위해 디자인 되었냐면, ViewModel이 있기전에는 UI컨트롤러의 라이플 사이클에 따라 그 안에 저장해 두었던 UI 관련 임시 데이터들이 모두 사라집니다. 그리고 액티비티가 종료되기 직전에 호출되는 onSaveInstanceState() 콜백에서 액티비티의 상태 또는 데이터를 저장할 수 있지만 직렬화할 수 없는 객체는 저장할 수 없습니다. 거기다 많은 양의 데이터를 저장할 수도 없었습니다. 그래서 나온 디자인이 ViewModel 디자인입니다. 그럼 사라지는 가장 대표적인 경우는 가로/세로(PORTRAIT->LANDSCAPE, LANDSCAPE->POR.. 2019. 10. 15. 이전 1 다음 반응형