Android 實現(xiàn)兩個Activity跳轉實例
1.關于從Activity A跳轉到Activity B
其中Activity A中有一個VideoView,Activity B中有一個MediaPlayer。
兩個不同的視頻的跳轉,前面我是在onStop()方法中銷毀VideoView(因為MediaPlayer是全局共用的,而VideoView內(nèi)包含MediaPlayer),但是每次進入Activity B視頻播放了一點
就會彈出了,導致視頻B播放失敗
public class MovieSynopsis extends BaseActivity implements OnClickListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.movie_synopsis);
}
@Override
public void onClick(View v) {
if(v.equals(mPlayButton)){
Intent intent = new Intent(MovieSynopsis.this, MoviePlayer.class);
startActivity(intent);
}
}
@Override
protected void onStop() {
if(movie_video!=null){
movie_video.pause();
movie_video.stopPlayback();
}
super.onStop();
}
@Override
protected void onDestroy() {
super.onDestroy();
}
}
后來修改了一些東西,把VideoView的銷毀放在了startActivity(intent)之前,這樣問題就解決了。
2.extends BaseActivity
public class MovieSynopsis extends BaseActivity implements OnClickListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.movie_synopsis);
}
@Override
public void onClick(View v) {
if(v.equals(mPlayButton)){
if(movie_video!=null){
movie_video.pause();
movie_video.stopPlayback();
}
Intent intent = new Intent(MovieSynopsis.this, MoviePlayer.class);
startActivity(intent);
}
}
@Override
protected void onStop() {
if(movie_video!=null){
movie_video.pause();
movie_video.stopPlayback();
}
super.onStop();
}
@Override
protected void onDestroy() {
super.onDestroy();
}
}
發(fā)現(xiàn)原來失敗的原因是,如果是在Activity A 的onStop()方法中銷毀VideoView,則你在Activity B中播放了一段時間視頻之后Activity A的onStop()方法才會去走,這樣就導致了你在看Activity B中的視頻的時候Activity A中會開始銷毀VideoView中的MediaPlayer,導致你的Activity B的視頻提前結束。
相關文章
Android中判斷網(wǎng)絡連接是否可用及監(jiān)控網(wǎng)絡狀態(tài)
獲取網(wǎng)絡信息需要在AndroidManifest.xml文件中加入相應的權限,接下來詳細介紹Android中判斷網(wǎng)絡連接是否可用及監(jiān)控網(wǎng)絡狀態(tài),感興趣的朋友可以參考下2012-12-12
Android 7.0調(diào)用相機崩潰詳解及解決辦法
這篇文章主要介紹了 Android 7.0調(diào)用相機崩潰詳解及解決辦法的相關資料,需要的朋友可以參考下2016-12-12

