0
我開發一個應用程序中,我所做的是:安卓:異步任務與線程
在onCreate()
我先叫一個異步任務,然後寫一個線程爲:
new LoadDataBase().execute();
// New Thread call.
new Thread() {
// Running Thread.
public void run() {
int count=0;
while (count<5){
try{
Thread.sleep(500);
count++;
}catch(Throwable e){
e.printStackTrace();
}
}
Intent intent = new Intent(ActivityOne.this,ActivityTwo.class);
startActivity(intent);
finish();
}
}.start();
我的異步任務代碼如下:
private class LoadDataBase extends AsyncTask<String, Void, String>{
@Override
protected String doInBackground(String... arg0) {
// Create data base from assets folder.
DataBaseHelper dataBaseHelper = new DataBaseHelper(getApplicationContext());
try {
dataBaseHelper.createDataBase();
} catch (IOException e) {
e.printStackTrace();
}
// Closing the Data base.
dataBaseHelper.close();
return "";
}
@Override
protected void onPostExecute(String result) {}
}
但問題是,我的線程無法正常工作。意思是我希望Activity應該等待一段時間然後Activity兩次調用。但它不是哈哈。
正如我運行我的應用程序,活動一是可見的分數秒和活動二發生。它發生得太快,以至於用戶無法找到應用程序中存在或不存在的活動。但其他功能工作正常。
現在我該怎麼做才能保持我的活動。我不想在異步任務中實現進度對話框,因爲我已經在XML文件中實現了它。
請指引我
感謝您的建議,但你能否詳細說明它的細節,如何寫等待使用處理器的時間碼。 –
https://www.google.co.in/search?q=handler+example+in+android&oq=handler&aqs=chrome.2.69i57j0l5.4695j0j8&sourceid=chrome&espv=2&es_sm=122&ie=UTF-8 –