11
이 단추는 내 시작 활동에 표시됩니다. 그것을 누르면 새 활동이 시작되지만 이것은 인터넷에서 일부 데이터가 수집 된 새 활동의 초기화에 약간의 시간이 걸립니다. 반으로 작동합니다. 진행 대화 상자가 표시되지만 진행 휠이 회전하지 않습니다.새 활동을 시작하는 중 진행 대화 상자
누군가 이런 일이 발생하는 이유를 말해 줄 수 있습니까?
Button b4 = (Button) findViewById(R.id.Button01);
b4.setOnClickListener(new View.OnClickListener() {
public void onClick (View view) {
final ProgressDialog pd = ProgressDialog.show(pak.this,
"", "Working..", true);
new Thread(new Runnable(){
public void run(){
Intent intent = new Intent();
intent.setClassName("sxe.pak", "sxe.pak.List");
startActivity(intent);
pd.dismiss();
}
}).start();
}
});
들으
좋은 대답을하지만, 나는 한 스레드가 UI 스레드를 사용할 필요가없는 것처럼 AsyncTask를에 스레드를 선호 :
더 많은 정보를 원하시면이 내 대답을 참조하십시오. – pgsandstrom
안녕하세요 mbaird, 너의 대답은 네. AsyncTask를 비동기 작업에 사용할 가능성을 알고 있지만 내 경우에는 사용할 수 없다 (또는 어떻게 알지 못한다) 원인으로 새로운 Activity를 시작하려고한다. 두 번째 활동의 시작 부분에서 진행 대화 상자를 시작하는 것은 옵션이 아닙니다. 행운을하지 않고 이미 시도 했으므로 두 번째 활동의 시작이 완료 될 때까지 첫 번째 활동이 표시됩니다. 버튼을 누르면 단추의 색이 바뀌고 바퀴가 돌아 가지 않을 때만 프로세스 진행 대화 상자가 표시됩니다. 그게 유일한 문제 야. – Andy
@Andy, UI 스레드에서 작업 중이므로 진행 대화 상자가 회전하지 않습니다. AsyncTask 또는 스레드 또는 Runnable을 통해 별도의 스레드로 다운로드 작업을 이동하십시오. 다시 말하지만, 제가 위에 주어진 대답을보고 두 번째 활동의 onCreate() 메소드에서 해당 질문에 대한 내 대답의 onCreate() 메소드에서 진행중인 작업을 복사하려고하면 작동 할 것이라고 약속드립니다. –