저는 활동 A과 일부 계산을 수행하고 데이터를 데이터베이스에 저장하는 AsyncTask를 가지고 있습니다. 이 작업은 3-5 초 정도 걸립니다. AsyncTask는 "저장"버튼을 누른 후 새로운 활동 B가 시작된 후에 호출됩니다 (이 활동 B는 중요하지 않음). Activity C도 있는데, Activity A 및 AsyncTask에서 저장 한 데이터를로드합니다. 그리고 여기에 내 문제가 있습니다 - 내가 C 작업을 시작하고 AsyncTask가 데이터 저장을 완료하지 못하면 AsyncTask가 완료되고 데이터를 작업에로드 할 때까지 애니메이션로드를 표시하려고합니다.android asynctask가 다른 활동을합니다.
onPostExecute 메서드의 AsyncTask는 전역 변수 "boolean finished = true"를 변경하고 Activity C를 시작한 후에 변수가 true인지 주기적으로 확인합니다. 그러나 나는 그것이 올바른 방법이 아니라고 생각합니다. 그럼 올바른 방법은 무엇입니까? 고맙습니다
왜'onPostExecute' 자체에서 활동 C를 시작하지 않습니까 ?? – Xenolion
@Xenolion 사용자가 아직 Activity C를 표시하고 싶지 않을 수 있기 때문에 – buci
대화 상자를 표시하고 게시에서 전역'boolean' isFinished = false'를 선언하면 변수가 'true'로 변경됩니다. 사용자가 'C'로 이동하기 위해 클릭하면, 기다리는 축배를 표시하지 않는다면'isFinished = true'가 먼저 체크하십시오! – Xenolion