アクティビティ (A と呼びましょう) とサービス (B と呼びましょう) に音楽プレーヤーが含まれています。
A にはシークバーがあり、それで MediaPlayer の音量を変更したいと考えています。何か案は?
MainActivity で:
MusicService mms;
mms = new MusicService();
Settings_Sound_Music_Volume.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
sdm.setSetting("SETTINGS_MUSIC_VOLUME",String.valueOf(Settings_Sound_Music_Volume.getProgress()));
mms.player.setVolume(Settings_Sound_Music_Volume.getProgress(), Settings_Sound_Music_Volume.getProgress());
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) {
// TODO Auto-generated method stub
Settings_Sound_Music_VolumeValue.setText(String.valueOf(progress) + "%");
}
});
しかし、このコードは私のアプリをクラッシュさせます。この行で NullPointerException を取得します。mms.player.setVolume(...);