dependencies {
implementation 'androidx.fragment:fragment-ktx:1.3.0'
implementation 'androidx.navigation:navigation-fragment-ktx:2.3.5'
implementation 'androidx.navigation:navigation-ui-ktx:2.3.5'
// Kotlin Coroutines dependencies
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1'
}
kotlin
fun NavController.navigateTo(@IdRes actionId: Int, bundle: Bundle? = null) {
currentDestination?.getAction(actionId)?.let { navigate(actionId, bundle) }
}
kotlin
button.setOnClickListener {
findNavController().navigateTo(R.id.action_startFragment_to_nextFragment)
}
kotlin
class MyViewModel : ViewModel() {
private val myRepository = MyRepository()
fun fetchData() {
viewModelScope.launch {
val data = myRepository.getData()
}
}
}