使用声音池的android多点触摸
我不知道如何正确使用onTouch。现在我可以按一个图像并播放声音,但我不能同时播放两个声音,也不能向下滑动手指播放所有声音,它只能播放第一个按下的图像。我知道这是因为onTouch和Multitouch,但我不知道如何做到这一点,我找不到任何相关的示例代码,任何帮助都非常感谢 这段代码是触控的,但我需要多点触控使用声音池的android多点触摸,android,multi-touch,soundpool,Android,Multi Touch,Soundpool,我不知道如何正确使用onTouch。现在我可以按一个图像并播放声音,但我不能同时播放两个声音,也不能向下滑动手指播放所有声音,它只能播放第一个按下的图像。我知道这是因为onTouch和Multitouch,但我不知道如何做到这一点,我找不到任何相关的示例代码,任何帮助都非常感谢 这段代码是触控的,但我需要多点触控 public boolean onTouch(View v, MotionEvent event) { if (event.getAction() == Motio
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN ) {
if(v.getId()==R.id.sagatup){
if (loaded) {
soundPool.play(soundID, volume, volume, 1, 0, 1f);
Log.e("Test", "Played sound");
}
}
if(v.getId()==R.id.sagatdown){
if (loaded) {
soundPool.play(soundID2, volume, volume, 1, 0, 1f);
Log.e("Test", "Played sound");
}
}
if(v.getId()==R.id.clap){
// Is the sound loaded already?
if (loaded) {
soundPool.play(soundID3, volume, volume, 1, 0, 1f);
Log.e("Test", "Played sound");
}
}
if(v.getId()==R.id.za3rota){
// Is the sound loaded already?
if (loaded) {
soundPool2.play(soundID4, volume, volume, 1, 0, 1f);
Log.e("Test", "Played sound");
}
}
}
return false;
}
更改
返回false
;到
返回true
当滑动同一个手指以触发其他按压时,您的代码将不起作用MotionEvent.ACTION\u DOWN
仅在用户最初触摸屏幕时触发一次,然后发送多个MotionEvent.ACTION\u MOVE
事件,直到用户抬起接收DOWN事件的同一手指。只要您使用多个手指按下按钮,并且您的设备支持多点触摸,多点触摸就可以工作。