您的位置:首页 > Web前端

Andorid数据存储----Shared Preferences 就像QQ的安全设置、系统设置

2012-03-01 09:50 323 查看


SPActivityMIDIPlayer

import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.KeyEvent;
import android.widget.TextView;

public class SPActivity extends Activity {
private MIDIPlayer mMIDIPlayer = null;
private boolean mbMusic = false;
private TextView mTextView = null;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

mTextView = (TextView)this.findViewById(R.id.TextView01);

mMIDIPlayer = new MIDIPlayer(this);
/* 装载数据 */

// 取得活动的preferences对象.
SharedPreferences settings = getPreferences(Activity.MODE_PRIVATE);

//取得值
mbMusic = settings.getBoolean("bmusic", false);
if(mbMusic){
mTextView.setText("当前音乐状态:开");
mbMusic = true;
mMIDIPlayer.PlayMusic();
}
else{
mTextView.setText("当前音乐状态:关");
}
}

public boolean onKeyUP(int keyCode, KeyEvent event)
{
switch (keyCode) {
case KeyEvent.KEYCODE_DPAD_UP:
mTextView.setText("当前音乐状态: 开");
mbMusic = true;
mMIDIPlayer.PlayMusic();
break;
case KeyEvent.KEYCODE_DPAD_DOWN:
mTextView.setText("当前音乐状态: 关");
mbMusic = true;
mMIDIPlayer.FreeMusic();
break;

}
return true;
}

public boolean onKeyDown(int keyCode, KeyEvent event){
if(keyCode == KeyEvent.KEYCODE_BACK){
/* 这里我们在推出应用程序时保存数据 */

// 取得活动的preferences对象.
SharedPreferences uiStata = getPreferences(0);

// 取得编辑对象
SharedPreferences.Editor editor = uiStata.edit();
// 添加值
editor.putBoolean("bmusic", mbMusic);

//提交保存
editor.commit();
if(mbMusic){
mMIDIPlayer.FreeMusic();
}
this.finish();
return true;
}
return super.onKeyDown(keyCode, event);
}
}


public class MIDIPlayer {
public  MediaPlayer  playerMusic = null;
private Context  mContext = null;

public MIDIPlayer(Context context){
mContext = context;
}
/* 播放音乐 */
public void PlayMusic(){
/* 装载资源中的音乐 */
playerMusic = MediaPlayer.create(mContext, R.raw.start);	//资源文件 raw文件夹中 start文件    mid格式

/* 设置是否循环 */
playerMusic.setLooping(true);
try {
playerMusic.prepare();
} catch (IllegalStateException e) {
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
playerMusic.start();
}

/* 停止并释放音乐 */
public void FreeMusic(){
if(playerMusic != null){
playerMusic.stop();		//停止
playerMusic.release();	//释放
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: