2013-01-24 2 views
0

짧은 비동기 API 호출을 담당하는 UI가있는 프래그먼트가 있습니다. 비동기 작업이 완료되면 조각이 결과 문자열과 함께 토스트 메시지를 트리거합니다.파괴 된 활동/조각, 토큰 스트링에서 토스트

내 문제는 사용자가 결과를 기다리지 않고 뒤로 버튼을 누를 때 활동이 onDestroy 뒤에 있기 때문에 앱이 때문에 결과적으로 이미 분리 된 조각에서 Toast + getString(R.string.whatever)을 트리거하는 onPostExecute 방법에 분쇄한다는 것입니다 상태.

조각이 분리되어 있는지 확인하거나 모달 인 ProgressDialog을 사용할 수 있지만 차단 또는 다른 단점없이 건배를 표시하는 것이 좋을 것 같습니다. 그것을 달성하는 방법에 대한 제안? 응용 프로그램 클래스의 브로드 캐스트 수신기 == 잔인 함?

감사합니다.

UPD 로그 :

01-24 12 : 01 : 29.626 : E/AndroidRuntime (616) java.lang.IllegalStateException : 조각 HandsetSocialNetworksFragment {} 40612a78 활동에 부착되지 01- 24 12 : 01 : 29.626 : E/AndroidRuntime (616) : android.support.v4.app.Fragment.getResources (Fragment.java:571) 01-24 12 : 01 : 29.626 : E/AndroidRuntime (616)) : at android.support.v4.app.Fragment.getString (Fragment.java:593)

답변

2

비동기 호출이 시작될 때 조각에서 활동을 가져 와서 응용 프로그램 컨텍스트를 가져옵니다. 그 문자열을 나중에 필요로하는 문자열을 얻기 위해 사용하십시오.

또는 토스트를 표시해야하는 대신 비동기 호출을 시작할 때 필요한 문자열을 가져올 수 있습니다.