您好,登錄后才能下訂單哦!
Android應用怎么為一個按鍵添加聲音?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
為按鍵添加聲音的方法:
public class MainActivity extends Activity { private Button mButton01; private SoundPool sp;//聲明一個SoundPool private int music;//定義一個整型用load();來設置suondID @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mButton01=(Button)findViewById(R.id.mButton01); sp= new SoundPool(10, AudioManager.STREAM_SYSTEM, 5);//第一個參數為同時播放數據流的最大個數,第二數據流類型,第三為聲音質量 music = sp.load(this, R.raw.start, 1); //把你的聲音素材放到res/raw里,第2個參數即為資源文件,第3個為音樂的優先級 mButton01.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { sp.play(music, 1, 1, 0, 0, 1); } } } }
在實現的過程中,我發現不同的Android機器對聲音資源文件的格式要求不同。
當聲音資源文件格式為wma時,Android虛擬機上測試,按鍵可以發出聲音。
在真機上測試(魅族M9),logcat顯示如下:
Unable to load sample: (null)
W/SoundPool sample 1 not READY
按下按鍵并沒有聲音。
查找資料發現,在使用SoundPool時,不同的機器對文件格式要求不同。
于是將資源文件轉為mp3格式類型,但是測試發現,這次的情況恰恰相反,即真機可以播放,虛擬機不行。
想到之前所做項目中,聲音資源的格式為ogg,沒有出現過類似問題。果斷轉換、進行測試,真機、虛擬機都可以啦!
看完上述內容,你們掌握Android應用怎么為一個按鍵添加聲音的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。