사용자가 전화기의 진동을 활성화/비활성화 할 수있는 응용 프로그램을 만듭니다. 이를 위해 스위치를 켭니다.동작 시작시 스위치 버튼 (켜기)이 항상 적용됩니다 (안드로이드 애플리케이션)
public class settings extends Activity {
public static boolean vibrationOnOff;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings);
final Switch tButton = (Switch) findViewById(R.id.vibration);
tButton.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {
if(isChecked){
tButton.setChecked(true);
vibrationOnOff = true;
}else{
tButton.setChecked(false);
vibrationOnOff = false;
}
}
});
}
}
내 질문 : 여기 내 코드 나는이 활동을 시작할 때마다, 스위치 버튼은 항상 항상 /) (의 IsChecked된다. 스위치를 선택 해제하고 다른 acvitiy로 다시 가서 settins 활동을 다시 열면 isChecked가 다시 수행됩니다.
어떻게 해결할 수 있습니까? 여기
이 비슷한 질문이지만, 내 문제가 해결되지 않은 : Android ToggleButton always check
왜 당신의 문제를 해결하지 못했습니까? 무슨 일이야? – Blackbelt
[SharedPreferences] (http://developer.android.com/reference/android/content/SharedPreferences.html)를 사용하고 있습니까? 사용자가 구성한 현재 설정을 저장하지 않으면 활동에서이 정보를 유지할 수 없습니다. 따라서 스위치를 점검하여 항상 생성됩니다. –