Спасибо! для того, чтобы быть здесь.
У меня есть действие с кнопкой (musi c), которая играет короткую музыку c при нажатии и кнопку переключения, когда проверяемый звук должен отключиться, и наоборот. Но кнопка переключения (звук) не работала, как ожидалось. Могут ли хорошие люди найти ошибку в моем коде ниже. Это моя первая программа, использующая Soundpool.
private var sp: SoundPool? =null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN)
setContentView(R.layout.activity_start)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
val audioAttr = AudioAttributes.Builder()
.setContentType(AudioAttributes.CONTENT_TYPE_MUSIC)
.setUsage(AudioAttributes.USAGE_GAME)
.build()
sp = SoundPool.Builder()
.setAudioAttributes(audioAttr)
.build()
} else sp = SoundPool(1, AudioManager.STREAM_MUSIC, 0)
val sound1:Int= sp!!.load(this,R.raw.key_tone,1)
val music= findViewById<Button>(R.id.exit)
val sound = findViewById<ToggleButton>(R.id.sound)
sound.setOnCheckedChangeListener{ _, isChecked ->
if (isChecked) {
// The toggle is enabled
sp?.setVolume(1,0F,0F)
} else {
// The toggle is disabled
sp?.setVolume(1,1F,1F)
}
}
music.setOnClickListener{
showCustomDialog()
sp?.play(sound1,1F,1F,0,0,1F)
}
}
Еще раз спасибо