2012-05-01 52 views
0

我可以讓進度對話框停止,但TabbedView活動永遠不會啓動,只會進入黑屏。有任何想法嗎?活動未啓動

class DownloadWebPageTask extends AsyncTask<String, Void, String> { 
    private final ProgressDialog dialog = new ProgressDialog(MainScreen.this); 
    @Override 
     protected void onPreExecute() { 
      dialog.setMessage("Gathering data for\n"+selectedSportName+".\nPlease wait..."); 
      dialog.show(); 
     } 


    @Override 
    protected String doInBackground(String... urls) { 
     String response = ""; 
     updateMaps(); 
     return response; 
    } 



    @Override 
    protected void onPostExecute(String result) { 
     dialog.dismiss(); 
     startTabbedViewActivity(); 
    } 
} 


private void startTabbedViewActivity(){ 
    Intent intent = new Intent(this, TabbedView.class); 
    intent.putExtra(SPORT_NAME_EXTRA, selectedSportName); 
    intent.putExtra(HEADLINES_FOR_SPORT_EXTRA,   existingSportHeadlines.get(selectedSportName)); 
    intent.putExtra(SCORES_FOR_SPORT_EXTRA, existingSportScores.get(selectedSportName)); 
    intent.putExtra(SCHEDULE_FOR_SPORT_EXTRA, existingSportSchedule.get(selectedSportName)); 
    startActivity(intent); 
} 

我已經看過了Manifest文件,我沒有看到任何奇怪的東西。無法弄清楚這一點。

+0

ProgressDialog停止旋轉,並保持幾秒鐘,然後屏幕變黑。 – user1154644

+1

你可以使用'AsyncTask'參考這個[developer.android.com](https://developer.android.com/reference/android/os/AsyncTask.html) – Herry

+1

嘗試使用異步任務,也因爲你在同一個活動沒有必要startActivity。 – user1203673

回答

0

是活動的佈局導向正確

android:orientation="vertical" 
+0

是,方向已設定。 – user1154644

0

你忘所以根本沒有執行它添加@覆蓋上面的「onPostExecute」的方法。

+0

小記。因此,任務完成時,應用程序只會從AsyncTask類(而不是子類中的那個)調用'onPostExecute'方法。 –

+0

我加了@Override,但顯然它不是正確的覆蓋。我正在使用正確的onPostExecute方法「必須重寫或實現一個超類型方法」? – user1154644