마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 스피너 선택저장

0 추천
      \ 
스피너 저장을 이런식으로 했는데요.
getSelectedItemPosition());은 int형이 더라구요.
 
   String spin1s = pref.getString("spin1s", "");
   spin1.setSelected(true);
 
이 부분이 조금 걸리는데... spin1.setSelected(spin1); 
이런식으로 넣어주어야 할것같은데..Stirng형식으로는 못넣네요..;
그리고 두번째 파라미터는 ""을 디폴트로 설정해도 관계없나요?..
   int spin1i = pref.getInt("spin1i", spin1.getSelectedItemPosition());
   spin1.setSelection(spin1i);
 
이 부분은 spin1.setSelection(spin1i); 이런식으로 넣는게 맞나요?..
 
지금 위에 소스에서 틀린게 있으면 바로잡아주셨으면 좋겠습니다...ㅜㅜ 

 

헬프미 (5,430 포인트) 님이 2015년 1월 6일 질문
헬프미님이 2015년 1월 7일 수정

1개의 답변

0 추천
 
채택된 답변
SharedPreferences는 각종 형을 지원합니다.

pref.getBoolean("xxxx", false)

정 문자열로 하고 싶으시면..

저장할때 putString("xxxx", "" + intVal)

불러올때 Integer.valueOf( getString("xxxx", "") )
neokii (1,280 포인트) 님이 2015년 1월 7일 답변
헬프미님이 2015년 1월 8일 채택됨
스피너는 보통 boolean을 쓰나요?
위에는 저장만 말씀해주셨는데요

editor.putboolean("spin", spin1.ischeckd());
editor.commit();
//저장

Pref.getboolean("spin",false);
spin1.setchecked();
//불러와서 체크상태나타내기

이런식으로 하시라는건가요?
아이고.. boolean 이 아니라 integer네요..
마찬가지로 putInt 로 쓰시면 되겠네요..
..   String spin1s = pref.getString("spin1s", "");
   spin1.setSelected(true);
   String spin2s = pref.getString("spin2s", "");
   spin2.setSelected(true);
   String spin3s = pref.getString("spin3s", "");
   spin3.setSelected(true);
           
   int spin1i = pref.getInt("spin1i", spin1.getSelectedItemPosition());
   spin1.setSelection(spin1i);
   int spin2i = pref.getInt("spin2i", spin2.getSelectedItemPosition());
   spin1.setSelection(spin2i);
   int spin3i = pref.getInt("spin3i", spin3.getSelectedItemPosition());
   spin1.setSelection(spin3i);

정말 죄송한데요.. 현재 이부분에서 틀린게 있나요..?
spin3.setSelected(true); 이게 적용이 안될거같은데.. 저 부분은 어떻게 써야되죠
?
...