공유 미리보기를 사용하여 토글 버튼의 상태를 저장합니다. 토글 버튼이 체크되어 있으면 "ON"하고, 토글 버튼을 체크하지 않으면 "OFF"합니다. 당신이 체크에있는 토글 버튼 내가 뭐하는 거지 경우 그 코드에서 볼 수 있듯이 하지만 상태를 retriveing하고 때, 항상 여기 "ON"반환 코드공유 우선권이 데이터를 저장하지 않습니다.
SharedPreferences.Editor shfEditMessageSMS;
SharedPreferences shfResponderMessage;
shfResponderMessage=getSharedPreferences("MESSAGE", Context.MODE_PRIVATE);
shfEditMessageSMS=shfResponderMessage.edit();
toggleStatus=(ToggleButton)findViewById(R.id.toggleButtonStatus);
toggleStatus.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
// TODO Auto-generated method stub
if(((ToggleButton)v).isChecked())
{
shfEditMessageSMS.putString("SMSRESPONDERONOFF", "ON");
shfEditMessageSMS.commit();
showNotification("ON");
}
else
{
shfEditMessageSMS=shfResponderMessage.edit();
shfEditMessageSMS.putString("SMSRESPONDERONOFF", "OFF");
shfEditMessageSMS.commit();
showNotification("OFF");
String SMSResponderOnOrOff=shfResponderMessage.getString("SMSRESPONDERONOFF", "NONE");
Log.i("SMS Responder on click "+SMSResponderOnOrOff," ");
}
}
});
입니다
shfEditMessageSMS.putString("SMSRESPONDERONOFF", "OFF");
shfEditMessageSMS.commit();
로그를 사용하여 검색하고 인쇄 할 때
String SMSResponderOnOrOff=shfResponderMessage.getString("SMSRESPONDERONOFF", "NONE");
Log.i("SMS Responder on click "+SMSResponderOnOrOff," ");
항상 로그에 "켜기"를 표시합니다.
무엇이 문제 일 수 있습니다. 덕분에 .
두 가지. 먼저,'commit()'에 의해 반환 된 값을 검사하여 값이 실제로 커밋되었는지 확인하십시오. 둘째, 문자열 값 "ON"과 "OFF"대신에'boolean'을 사용하지 않을까요? – theisenp