按钮onClickListener无法在Android中播放声音
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了按钮onClickListener无法在Android中播放声音相关的知识,希望对你有一定的参考价值。
我试图设置我的按钮,点击时播放一首歌,但没有任何反应,没有错误,没有强制退出。当我单击渲染中的按钮时,它只是按下。
public class Shows extends AppCompatActivity {
RadioButton radRent1, radRent2, radWicked, radHamilton, radPhantom;
Button btnRent, btnWicked, btnHamilton, btnPhantom;
MediaPlayer mpRent1,mpRent2, mpWicked, mpHamilton, mpPhantom;
int playing;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_shows);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startActivity(new Intent(Shows.this, ItemListActivity.class));
}
});
playing = 0;
mpRent1 = new MediaPlayer();
mpRent1 = MediaPlayer.create(this, R.raw.seasons_of_love);
mpRent2 = new MediaPlayer();
mpRent2 = MediaPlayer.create(this, R.raw.seasons_of_love);
btnRent = (Button)findViewById(R.id.btnRent);
btnRent.setOnClickListener(bRent);
}
Button.OnClickListener bRent = new Button.OnClickListener() {
@Override
public void onClick(View v) {
switch(playing){
case 0:
mpRent1.start();
playing = 1;
btnRent.setText("Pause Selected Song");
break;
case 1:
mpRent1.pause();
playing = 0;
btnRent.setText("Play Selected Song");
break;
}
}
};
}
任何人都可以看到错误在哪里?
答案
您需要打开View的ID
或者在bRent上使用set onClickListener
`
bRent.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view){
//put your logic here
}`
另一答案
以这种方式设定行动
playbutton.setOnClickListener(this);
pausebutton.setOnClickListener(this);
然后实现这一点
implements View.OnClickListener
而不是覆盖
@Override
public void onClick(View view) {
switch(view.getId()) {
case R.id.play:
//Play voicefile
break;
case R.id.pause:
//Stop MediaPlayer
break;
}
}
以上是关于按钮onClickListener无法在Android中播放声音的主要内容,如果未能解决你的问题,请参考以下文章
为 EditText 的 Drawable 权限设置 onClickListener [重复]
如何在主要活动中使用按钮 onclicklistener 进行回收视图项目