现在在做一个项目,有一个switch开关按钮,当打开按钮的时候,调用系统的触摸提示音,
点击屏幕上有焦点的地方可以发出点击的声音,相反,关闭按钮的时候,点击屏幕上有焦点的地方就没有声音.
现在写的代码是
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
Settings.System.putInt(mActivity.getContentResolver(), Settings.System.SOUND_EFFECTS_ENABLED, isChecked ? 1 : 0);
AudioManager mAudioManager = (AudioManager)mActivity.getSystemService(Context.AUDIO_SERVICE);
if (isChecked) {
mAudioManager.loadSoundEffects();
}
else {
mAudioManager.unloadSoundEffects();
}
}
测试结果如下:
1、在android设备的触摸提示音为开时,点击app中的switch开关按钮,能正常开启和关闭触摸提示音,打开android设备的设置界面,也能看到触摸提示音的状态为对应的打开或者关闭的状态;
2、在android设备的触摸提示音为关时,点击app中的switch开关按钮,却不能正常开启触摸提示音,打开android设备的设置界面,却发现触摸提示音的选项与app中的switch一样显示为打开状态。
说明在该代码能正常设置Settings.System的值,但是在android设备的触摸提示音为关时,却无法开启。是否在开启时,缺少了什么步骤???