私はAndroid開発の初心者であり、アクティビティの変更を保存するためのボタンをどのように作成できるかを理解しようとしています。簡単な説明:呼び出し音の音量を変更できるseekBarがありますが、システムに直接変更されます。変更を保存するためのボタンを配置しました。これを行う方法がわかりません。これは私のコードです:
main.xml
<Button
android:id="@+id/save"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_text"/>
<SeekBar
android:id="@+id/seekVolume"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
アクティビティ
public class SaveActivity extends Activity {
private AudioManager aManager;
private SeekBar seekVolume;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
aManager = (AudioManager) getSystemService(AUDIO_SERVICE);
Button save = (Button) findViewById(R.id.save);
setOnClickListener();
}
private void setOnClickListener(){
SeekBar seekVolume = (SeekBar) findViewById(R.id.seekVolume);
seekVolume.setMax(aManager.getStreamMaxVolume(AudioManager.STREAM_RING));
seekVolume.setKeyProgressIncrement(1);
seekVolume.setProgress(aManager.getStreamVolume(AudioManager.STREAM_RING));
seekVolume.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
public void onStopTrackingTouch(SeekBar ringvolume) {
}
public void onStartTrackingTouch(SeekBar ringvolume) {
}
public void onProgressChanged(SeekBar ringvolume, int progress,boolean fromUser) {
aManager.setStreamVolume(AudioManager.STREAM_RING, progress, AudioManager.FLAG_SHOW_UI + AudioManager.FLAG_PLAY_SOUND);
}
});
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event){
if(keyCode==KeyEvent.KEYCODE_VOLUME_DOWN || keyCode==KeyEvent.KEYCODE_VOLUME_UP){
seekVolume.setProgress(aManager.getStreamVolume(AudioManager.STREAM_RING));
}
return (super.onKeyDown(keyCode, event));
}
}
私は本当にこれを行う方法がわかりません。みんなありがとう!