@Override
public void onClick(View v) {
if(v.getId()==R.id.cvp11 && v.getId()==R.id.cvp22 && v.getId()==R.id.cvp32)
yc.start();
else if(v.getId()==R.id.cvp12 && v.getId()==R.id.cvp21 && v.getId()==R.id.cvp31)
dc.start();
}
在没有添加或声明的情况下,它会播放cvp11和cvp12按钮点击的声音,但我想用其他按钮点击播放这些声音。但是当我这样写时,当我点击每个按钮时,它们都没有播放。出了什么问题? THX。
答案 0 :(得分:1)
试试这个:
switch(v.getId())
{
case R.id.cvp11:
case R.id.cvp22:
case R.id.cvp32:
yc.start();
break;
case R.id.cvp12:
case R.id.cvp21:
case R.id.cvp31:
dc.start();
break;
}
答案 1 :(得分:1)
我认为不是&&
(逻辑AND运算符)而是要||
(逻辑OR运算符):
public void onClick(View v) {
if(v.getId()==R.id.cvp11 || v.getId()==R.id.cvp22 || v.getId()==R.id.cvp32)
yc.start();
else if(v.getId()==R.id.cvp12 || v.getId()==R.id.cvp21 || v.getId()==R.id.cvp31)
dc.start();
}
当然,对于格式化和可用性,@ dmytrodanylyk的switch
答案是一种更优雅的方式。