編輯:關於Android編程
很久以前就想學習3d的,但一直沒有時間,最近能閒點,所以開始學習3d的;
今天先寫聲音:
游戲中的聲音可以分為兩種,背景音樂和動作音樂;
他們有什麼區別:背景音樂,相對與動作音樂它的存在時間要長,所以按這樣的方式我將其引用分為兩種:一般音樂播放(背景音樂),池播放(動作音樂)
(1)池播放:
代碼實現:
SoundPool sp; //得到一個聲音池引用
HashMap<Integer,Integer> spMap; //得到一個map的引用
//初始化
sp=new SoundPool(
5, //maxStreams參數,該參數為設置同時能夠播放多少音效
AudioManager.STREAM_MUSIC, //streamType參數,該參數設置音頻類型,在游戲中通常設置為:STREAM_MUSIC
0 //srcQuality參數,該參數設置音頻文件的質量,目前還沒有效果,設置為0為默認值。
);
spMap=new HashMap<Integer,Integer>();
spMap.put(1, sp.load(this, R.raw.attack02, 1));
spMap.put(2, sp.load(this, R.raw.attack14, 1));
//音樂播放
public void playSound(int sound,int number){ //播放聲音,參數sound是播放音效的id,參數number是播放音效的次數
AudioManager am=(AudioManager)this.getSystemService(this.AUDIO_SERVICE);//實例化AudioManager對象
float audioMaxVolumn=am.getStreamMaxVolume(AudioManager.STREAM_MUSIC); //返回當前AudioManager對象的最大音量值
float audioCurrentVolumn=am.getStreamVolume(AudioManager.STREAM_MUSIC);//返回當前AudioManager對象的音量值
float volumnRatio=audioCurrentVolumn/audioMaxVolumn;
sp.play(
spMap.get(sound), //播放的音樂id
volumnRatio, //左聲道音量
volumnRatio, //右聲道音量
1, //優先級,0為最低
number, //循環次數,0無不循環,-1無永遠循環
1 //回放速度 ,該值在0.5-2.0之間,1為正常速度
);
}
//事件的引用:
playSound(1,1); //播放第一首音效,循環一遍
sp.pause(spMap.get(1)); // 暫停第一首音效
sp.stop(spMap.get(1));// 停止第一首音效
好了,以上為池播放的簡單使用;
(2) 一般播放
MediaPlayer mp; //MediaPlayer引用
AudioManager am; //AudioManager引用
//初始化音頻
mp=new MediaPlayer();
//在第一次播放前,必須
try{
mp.setDataSource("/sdcard/dl.mid"); //加載音頻,進入Initialized狀態。
}catch(Exception e){e.printStackTrace();}
try{
mp.prepare(); //進入prepared狀態。
}catch(Exception e){e.printStackTrace();}
//事件的引用: www.2cto.com
mp.start(); //播放音樂
mp.pause(); //暫停音樂
mp.stop(); //停止音樂
//mp.isPlaying();//判斷是否為播放狀態
//初始化音量
am=(AudioManager) this.getSystemService(this.AUDIO_SERVICE);
am.adjustVolume(AudioManager.ADJUST_RAISE, 0); //增大音量
am.adjustVolume(AudioManager.ADJUST_LOWER, 0); //減小音量
好的,以上為聲音的簡單調度;
話說為了防止偷拍,業內有不成文規定,手機公司在做camera時,點擊拍照和錄像鍵的時候,必須要有提示音。因此,google也就非常人性化的將播放拍照聲音的函數,放到了ca
ES文件浏覽器怎麼開啟保護跟打開網絡保護。ES文件浏覽器很強大的一個軟件。有時我們防止別人進入手機文件,偷看我們的文件的時候,我們設置對ES文件浏覽器開啟保
Android開發中的圖片存儲本來就是比較耗時耗地的事情,而使用第三方的七牛雲,便可以很好的解決這些後顧之憂,最近我也是在學習七牛的SDK,將使用過程在這記錄下來,方便以
先上效果圖: NavigationView是android-support-design包下的一個控件,在使用NavigationView時需要引入design