0
나는 pdf 파일을 생성하는 클래스가 있습니다. 이 클래스는 onCreate, onPause (등등) 메소드가 있다는 것을 의미하는 Activity에 의해 확장됩니다.스레드에서 활동 시작
pdf 파일을 생성하는 동안 생성되는 데 시간이 걸리므로 진행률 표시 줄을 표시하여 파일 생성 중임을 사용자에게 알립니다.
모든 것이 잘 작동한다고 생각합니다. 생성 버튼을 클릭하면 진행 막대가 몇 초 동결됩니다 (Logcat에 따르면 : 파일이 생성되는 동안 진행률 표시 줄이 멈춤).
내 문제는 파일을 생성하는 동안 진행률 막대를 멈출 수 없게 만드는 방법을 모르겠다는 것입니다.
Log.i(TAG, "PDF generation: " + position);
final ProgressDialog dialog = new ProgressDialog(this);
dialog.setCancelable(true);
dialog.setIndeterminate(true);
dialog.setMessage("Generating...");
dialog.show();
new Thread(new Runnable() {
@Override
public void run() {
startActivity(new Intent(getApplicationContext(),
PdfGenerator.class));
runOnUiThread(new Runnable() {
@Override
public void run() {
dialog.hide();
}
});
}
}).start();
가 지금은 좋은 것 같습니다하지만 일부 변경했다. dialog.hide()를 dialog.cancel()로 변경하고 새로운 활동을 시작한 후 이동했습니다. 감사합니다. – burjulius
@juliuks :하지만'runOnUiThread'는 Activity 클래스의 메소드입니다. 그런 다음 Activity 컨텍스트를 사용하지 않으면 액세스 할 수 없습니다. 거의 환영합니다. firend :) –
변경 사항을 이해하지 못했을 것입니다. Btw, 이제 코드는 다음과 같이 보입니다 : http://pastebin.com/fxB1Zz9i – burjulius