2012-01-31 29 views
0

我正在嘗試下載mp3文件。爲了這個,我已經創造了這樣一個活動:在恢復活動時難以維持以前的進度狀態欄

public class audiostream extends Activity{ 

private Button streamButton; 

private ImageButton playButton; 

private TextView textStreamed; 

private boolean isPlaying; 

private StreamingMediaPlayer audioStreamer; //This is the object of supporting class 

protected void onCreate(Bundle savedInstanceState){ 

     super.onCreate(savedInstanceState); 
      //other activities      } 
現在

上的按鈕單擊事件我打電話這個功能:

private void startStreamingAudio() { 
     try { 
      final ProgressBar progressBar = (ProgressBar) findViewById(R.id.progress_bar); 
      if (audioStreamer != null) { 
       audioStreamer.interrupt(); 
      } 
      audioStreamer = new StreamingMediaPlayer(this,textStreamed, playButton, streamButton,progressBar); 
      audioStreamer.startStreaming("file path",file_size,duration); 

      streamButton.setEnabled(false); 
     } catch (IOException e) { 

     } 

    } 

下面給出的是StreamingMediaPlayer類:

public class StreamingMediaPlayer { 


    private TextView textStreamed; 

    private ImageButton playButton; 

    private ProgressBar progressBar; 
    public StreamingMediaPlayer(Context context,TextView textStreamed, ImageButton playButton, Button streamButton,ProgressBar progressBar) 
     { 
     this.context = context; 
     this.textStreamed = textStreamed; 
     this.playButton = playButton; 
     this.progressBar = progressBar; 
     } 

} 

其餘的作品由剩餘的課程完成,例如增加進度條,播放音頻等。

隨着音頻的進展,進度條會增加。我面臨的問題是,在播放音頻的同時,如果我按下按鈕並打開之前的活動,音頻將播放(這是我想要的),但是當我藉助意圖返回活動時,所有內容以活動剛創建的方式出現。以前進展的進度條現在看起來是什麼時候我第一次打開這個活動。在簡單的句子中,問題在於,正在播放音頻文件的活動不會恢復到之前的狀態。請幫助我。

回答

0

在活動 - 生命週期中,您必須抓住onResume()Intent並相應地填充數據。

+0

由於主控制是與另一個類,我真的不知道如何恢復onResume()的前一個控制狀態, – 2012-01-31 14:05:32