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

Preferences 로 이미지 좌표 저장할 수 있나요?

0 추천
현재 구현하려는 모습이 이미지를 터치 이벤트로 이동(드래그)시킨다음 action_up 할때

이미지의 X좌표와 Y좌표를 SharedPreferences로 저장한 다음

앱을 재실행 했을때 이미지가 마지막 이동(드래그)된 위치에서 다시 보여지게 하고 싶은데요

현재 코드 진행입니다

@Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  getXml();
  putXml();
  getXml();

View.setX(QX);

View.setY(QY);

//......

case MotionEvent.ACTION_UP:
     putXml();

private void putXml() {
  SharedPreferences Prefs = getSharedPreferences("pref", MODE_PRIVATE);
  SharedPreferences.Editor editor = Prefs.edit();
  editor.putInt("pref_X", viewX); // 마지막 이미지 X좌표
  editor.putInt("pref_Y", viewY); // 마지막 이미지 Y좌표
  editor.commit();
 }

private void getXml() {
  SharedPreferences Prefs = getSharedPreferences("pref", MODE_PRIVATE);
  int QX = Prefs.getInt("pref_X",0);
  int QY = Prefs.getInt("pref_Y",0);

 }

이렇게하니까 계속 오류가 나네요
카카오쿤 (190 포인트) 님이 2016년 6월 10일 질문

1개의 답변

0 추천
onCreate()에서 왜 getXml() 한다음에 다시 put 하고 다시 get 하는지 모르겠고...

QX와 QY는 getXml()의 지역변수인데 왜 onCreate()에서 사용하는지 모르겠네요.

 

viewX, viewY가 전역변수인것 같은데....QX, QY는 왜 사용하시는건지...
바램 (19,650 포인트) 님이 2016년 6월 10일 답변
바램님 말처럼 onCreate()에서 get만 하고
변수도 지역변수로 다 수정했는데요
제가 궁금한점은 저장된 값을 어떻게 이미지 좌표로 넣어야할까요?
setX 말고 다른 방법이 있는지 알려주세요
...