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

백그라운드 서버 응답으로 부터 Toast메시지 사용

0 추천

안녕하세요 서버에서 부터 온 response로 부터 Toast메시지를 띄우고싶습니다..

JSONObject jsonObject=new JSONObject(response);
boolean success=jsonObject.getBoolean("success");
if(success){
    buylist.remove(i);
    notifyDataSetChanged();
    parentActivity.runOnUiThread(new Runnable() {
        @Override
        public void run() {
            Toast.makeText(context,"글 삭제 성공!",Toast.LENGTH_LONG).show();
        }
    });

}

 

제가 작성한 코드는 다음과 같구요..서버로부터 응답을 받아 buylist.removi(i)는 정상적으로 삭제가 되고 서버

db에서도 삭제가 되지만.. 삭제후 Toast메시지가 띄워지지않아 uithread 를사용도 해봤는데도 메시지가 성공적으로 출력되지않아 질문올립니다.. 같은 문제를 겪으신분이나 해결법을 아시는분은 댓글 달아주세요..!!

cehs0703 (340 포인트) 님이 2018년 9월 1일 질문

1개의 답변

0 추천
코드상 특별한 문제는 보이지 않습니다만 서버 통신 이후 UI 처리는 UI Controller(액티비티 또는 프래그먼트)에서 하는 것이 바람직합니다.

토스트를 띄울때 넘기고 있는 context가 잘못되었을 가능성이 있어 보이네요.

parentActivity.getApplicationContext()를 넘겨 보시기 바랍니다.
Gradler (109,780 포인트) 님이 2018년 9월 3일 답변
넵..context 가 nullpoint 를 반환하고 있어서 getApplicationContext()로 해결하였습니다 감사합니다!!!!
...