다음은 Android에서 진행 대화 상자에 대한 코드이며 다음 오류가 발생합니다 : android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views
. 이 오류와 관련된 모든 이전 게시물을 보았지만이 오류를 수정할 수 없습니다.Android : 점점 더 많은 오류 "보기 계층 구조를 만든 원래 스레드 만보기를 터치 할 수 있습니다."
// Waiting screen
pleaseWaitdialog = ProgressDialog.show(PhoneBookListView.this, "Loading", "Please wait...", true);
new Thread(new Runnable() {
@Override
public void run()
{
Looper.prepare();
// do the thing that takes a long time
LoadContactFromPhoneAndSim();
PhoneBookListView.this.runOnUiThread(new Runnable() {
@Override
public void run()
{
pleaseWaitdialog.dismiss();
}
});
}
}).start();
아무 도움이됩니다. 감사합니다.
왜 'Looper.prepare()'를 호출할까요? –
나는 Looper.prepare()를 추가 한 오류를 제거하기 위해 또 다른 오류가 발생했습니다. –
정확히 무엇을하고 있는지 알고있는 경우에만 Looper.prepare()를 호출해야합니다. 그렇지 않으면 이런 종류의 문제가 발생할 수 있습니다. – PearsonArtPhoto