我正在创建一个音乐应用程序(笛子),当按钮被点击时播放声音。但我想在多个按钮同时被按下时发出特定的声音(例如:当两个按钮同时被按下时播放c音符),我的应用程序有七个按钮,可以发出七个不同的音符或声音(c、d、e、f、g、a、b)。
有七个按钮可以发出七个不同的音符或声音(c,d,e,f,g,a,b)。
应用程序的工作方式应该是
-当同时按下按钮2和3时,播放音符c。
->当按下按钮2时,播放音符d。
->当按下按钮1时,播放音符e。
->当同时按下按钮3、4、5、6和7时,播放音符f。
->当同时按下按钮2、3、4、5和6时,播放音符g。
-当同时按下按钮2、3、4和5时,播放音符a。
-当按钮2、3、4同时按下时,播放音符b。
如果有人能帮助我,我将感激不尽。
button1down : a=1 play();
button1up : a=0 play();
button2down : b=1; play();
button2up : b=0; play();
.......
play(){
if(a&&b){
play_tone_ab();
}else
if(a){
play_tone_a();
}
}
伪代码会像这样。但你在播放音乐时可能会遇到一些其他问题。播放许多声音文件可能会导致一些其他问题。有时这是一个硬件问题。所以,你可能需要通过测试算法来使这部分稳定,如果正确的函数被调用。首先使用system.log来确定。不过你可能需要一个不错的混音库,它可以在输出前对输入的声音进行混音。