Jak spravovat MediaPlayer Správně v jetpack skládat?

0

Otázka

Vždy, když chci přejít na další obrazovku chci, aby můj MediaPlayer by měl Přestat tam, kde je nejlepší místo k použití stop() funkce .

@Composable
 fun MenuScreen(navController: NavController) {

val context = LocalContext.current
val menuMusic : MediaPlayer = MediaPlayer.create(context , R.raw.menu_music)
menuMusic.isLooping = true
menuMusic.start()

Box(
    modifier = Modifier
        .fillMaxSize()
        .background(color = darkBackground)
) {...}
android-jetpack-compose kotlin
2021-11-23 13:35:19
1

Nejlepší odpověď

1

Pokud chcete, aby váš MediaPlayer začít, když vaše composable vstoupí do složení a zastavit, když opustí složení, tak uděláte toto:

val context = LocalContext.current
val menuMusic: MediaPlayer = MediaPlayer.create(context , R.raw.menu_music)

DisposableEffect(Unit) {
    menuMusic.isLooping = true
    menuMusic.start()

    onDispose {
        menuMusic.stop()
    }
}
2021-11-23 14:09:36

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................