我是java的新手,并且为此苦苦挣扎了很长时间。我正在制作音板,每当按下Cardview时,我都希望它播放声音并在音频持续时间内更改Cardview的背景颜色。我怎样才能做到这一点?播放声音和更改颜色已经可以了,但是我不知道如何设置持续时间或其他内容。有人可以帮我吗?
final MediaPlayer bingoMediaPlayer = MediaPlayer.create(this, R.raw.bingo);
final CardView bingo = (CardView) this.findViewById(R.id.play_bingo);
bingo.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
bingoMediaPlayer.start();
bingo.setCardBackgroundColor(Color.parseColor("#FF6F00"));
Toast.makeText(MainActivity.this,"kekkkk", Toast.LENGTH_SHORT).show();
}
});
答案 0 :(得分:2)
在音频完成时重置颜色。为此,您可以使用OnCompletionListener。
bingoMedia.setOnCompletionListener {
bingo.setCardBackgroundColor(Color.parseColor("your_default_color"))
}
您可以在此处找到原始文档:MediaPlayer.OnCompletionListener