PlayerAndroid/app/src/main/java/code/name/monkey/retromusic/extensions/NavigationExtensions.kt

25 lines
931 B
Kotlin
Raw Normal View History

2020-07-28 19:18:34 +00:00
package code.name.monkey.retromusic.extensions
import androidx.annotation.IdRes
import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.Fragment
import androidx.navigation.NavController
2020-08-11 18:29:44 +00:00
import androidx.navigation.findNavController
2020-07-28 19:18:34 +00:00
import androidx.navigation.fragment.NavHostFragment
import androidx.navigation.fragment.findNavController
fun Fragment.navigate(@IdRes id: Int) = findNavController().navigate(id)
2020-08-11 18:29:44 +00:00
fun Fragment.findNavController(@IdRes id: Int): NavController {
2020-07-28 19:18:34 +00:00
val fragment = childFragmentManager.findFragmentById(id) as NavHostFragment
return fragment.navController
}
2020-08-11 18:29:44 +00:00
fun Fragment.findActivityNavController(@IdRes id: Int): NavController {
return requireActivity().findNavController(id)
}
fun AppCompatActivity.findNavController(@IdRes id: Int): NavController {
2020-07-28 19:18:34 +00:00
val fragment = supportFragmentManager.findFragmentById(id) as NavHostFragment
return fragment.navController
}