我在我的應用程序中有一個活動,它需要幾個屏幕捕獲並移動到下一個按鈕單擊活動。我想在截圖時向用戶展示一些進度或狀態(需要5-8秒)。我嘗試使用AsyncTask
和runOnUithread()
。但沒有運氣。即使我在doInBackground()
中編寫了整個代碼,我也不知道爲什麼ProgressDialog在獲取所有屏幕截圖後啓動。有什麼更好的方法來做到這一點?這裏是我的代碼:延遲截圖
public class TakeScreenShots extends AsyncTask<Void, Void, Void> {
private ProgressDialog dialog;
@Override
protected void onPreExecute() {
this.dialog = ProgressDialog.show(MyActivity.this, "MyTitle",
"Loading .....", true);
}
@Override
protected Void doInBackground(Void... params) {
MyActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
takeScreenshots();
}
});
return null;
}
@Override
protected void onPostExecute(Void unused) {
gotoNextActivity();
this.dialog.dismiss();
}
}
如果你實現了asynctask,它應該顯示進度對話框,並在完成後移動到下一個活動。 – Raghunandan
是的。但它不是那樣做的。在調用takeScreenShots()方法後出現進度對話框。 –
你在NExt屏幕上做什麼? – Sameer