[英]App get Crash when press Save Button
i have an issue regarding saving the volume changed when i press a button, and do not understand why. 我有一个关于保存音量的问题,当我按下一个按钮时,音量已更改,并且不明白为什么。 Could you please help pls? 你能帮忙吗? My code Below: 我的代码如下:
private AudioManager aManager;
private SeekBar seekVolume;
private Button save;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
aManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
Button save = (Button) findViewById(R.id.save);
}
public void saveOnClickListener(View view){
int progress = 1;
int keyCode = 0;
KeyEvent keyEvent;
aManager.setStreamVolume(AudioManager.STREAM_RING, progress , AudioManager.FLAG_SHOW_UI + AudioManager.FLAG_PLAY_SOUND);
if(keyCode==KeyEvent.KEYCODE_VOLUME_DOWN || keyCode==KeyEvent.KEYCODE_VOLUME_UP){
seekVolume.setProgress(aManager.getStreamVolume(AudioManager.STREAM_RING));
}else if (keyCode==KeyEvent.KEYCODE_VOLUME_DOWN || keyCode==KeyEvent.KEYCODE_VOLUME_UP){
seekVolume.setProgress(aManager.getStreamVolume(AudioManager.STREAM_NOTIFICATION));
}
}
}
First i want to make changes for Ringer Volume, and when press Save Button , to commit the changes. 首先,我想对“铃声音量”进行更改,然后按“保存”按钮以提交更改。 Thanks guys 多谢你们
i think in xml u have not add this as u have used method saveOnClickListener add in xml in Button property as 我认为在xml中您尚未添加此内容,因为您已使用方法saveOnClickListener在Button属性中添加为xml中的内容
android:onClick="saveOnClickListener"
or either u can use in activity as shown below if u have not added in xml 或者如果您尚未在xml中添加,则您可以按如下所示在活动中使用
Button save = (Button) findViewById(R.id.save);
save.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
// do here what u want onclick of save button
}
}
});
you have made the aManager local in oncrete so it's global variable with same name would still null in saveOnClickListener 您已在acrete中将aManager设置为本地,因此具有相同名称的全局变量在saveOnClickListener中仍为null
instead of this 代替这个
AudioManager aManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
use 采用
aManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
in Oncreate........... 在Oncreate ...........
You better make aManager and seekVolume global and remove 您最好将aManager和seekVolume设置为全局并删除
SeekBar seekVolume = (SeekBar) findViewById(R.id.seekVolume);
in the onClickListener 在onClickListener中
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.