Your Second Kotlin Android App

Aug 29 2023 · Kotlin 1.8.21, Android 13, Android Studio Flamingo | 2022.2.1

Part 3: Save Preferences

20. Challenge: Create an Instance of ListDataManager

Episode complete

Play next episode

Next
About this episode

Leave a rating/review

See forum comments
Cinema mode Mark complete Download course materials
Previous episode: 19. Create a ViewModel Next episode: 21. Read & Save Tasks From SharedPreferences

Get immediate access to this and 4,000+ other videos and books.

Take your career further with a Kodeco Personal Plan. With unlimited access to over 40+ books and 4,000+ professional videos in a single subscription, it's simply the best investment you can make in your development career.

Learn more Already a subscriber? Sign in.

Transcript: 20. Challenge: Create an Instance of ListDataManager

You created your viewmodel but didn’t use it. In this challenge, you’re going to create an instance of your viewmodel so that you can be able to use it to read and save your todos.

You need to add the latest viewmodel-compose dependency to your app module’s build.gradle file. This dependency has a utility function named viewModel that returns an existing ViewModel or creates a new one for the given owner.

Inside the TaskListScreen composable, create an instance of the TaskListViewModel class at the very top of the composable using the viewModel function from the library.

Pause the video and attempt the challenge.

Welcome back! Hope you had fun with the challenge. Here’s a quick demo of what you should have done.

Head over to the build.gradle app module file and add the following dependency:

implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:2.6.1'

This dependency has the required utility function named viewModel.

Head over to TaskListScreen.kt and add the following code inside the TaskListScreen composable:

val taskListViewModel: ListDataManager = viewModel()

Remember to resolve the imports when the IDE prompts you to do so.

In the code above, you created an instance of the ListDataManager class at the very top of the composable using the viewModel function from the library.

Congratulations on being able to create an instance of your view model!