(libgdx学习)Music

官方文档部分解释:

1)Music instances are heavy, you should usually not have more than one or two at most loaded.

Music instance needs to be disposed if it is no longer needed, to free up resources.

Music实例是重量级的,你最多不要创建唱过2个以上的Music实例。当你不再使用music实例的时候,Music实例需要dispose(销毁)。


二、应用举例

package com.example.groupactiontest;

import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.Input.Keys;
import com.badlogic.gdx.Input.Peripheral;
import com.badlogic.gdx.audio.Music;
import com.badlogic.gdx.graphics.GL10;

public class MyGame implements ApplicationListener {

	Music music;
	float position ;
	
	@Override
	public void create() {
		music = Gdx.audio.newMusic(Gdx.files.internal("rain.mp3"));//加载音乐
		music.play();
//		music.setVolume(15f);//play()之后一定要设置音量,否则很可能听不到声音
		music.setVolume(0.5f);//设置音量是最大值的一半
		
//		music.play();//播放音乐
//		music.setVolume(15f);//设置音量大小
//		music.setLooping(true);//设置是否循环播放
//		music.stop();//停止音频.音乐为位置回到0
//		music.pause();//暂停音频.音乐的位置是暂停时的那个位置
//		music.play();//播放音乐
//		boolean isPlaying = music.isPlaying();//判断音乐是否正在播放
//		boolean isLooping = music.isLooping();//判断音乐是否循环播放
//		position = music.getPosition();//获取音频现在播放到的位置
//		
//		System.out.println("isPlaying: " + isPlaying);
//		System.out.println("isLooping: " + isLooping);
		
		
		
	}

	@Override
	public void dispose() {
		// TODO Auto-generated method stub

	}

	@Override
	public void pause() {
		// TODO Auto-generated method stub

	}

	@Override
	public void render() {
		Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
		
		if(music.getPosition() > 6){
//			music.stop();
			music.pause();
			System.out.println("position:----》 " + music.getPosition());
		}
	}

	@Override
	public void resize(int arg0, int arg1) {
		// TODO Auto-generated method stub

	}

	@Override
	public void resume() {
		// TODO Auto-generated method stub

	}

}


四、源码下载

http://download.csdn.net/detail/caihongshijie6/7052069


你可能感兴趣的:((libgdx学习)Music)