Android笔记之多个Activity的生命周期交互

 

单个Activity:

      应用开启时调用:onCreate(),onStart(),onResume();

      按下返回键:onPause(),onStop(),onDestory();

多个Activity之间交互时:

     跳转至第二个Activity时:

FirstActivity SecondActivity
onPause()  
 

onCreate()

  onStart()
  onResume()
onStop()  

 

 

 

 

 

 

 

按下锁屏键

SecondActivity
onPause()
onStop()

 

 

 

解锁

SecondActivity
onRestart()
onStart()
onResume()

 

 

 

 

按下返回键,或者SecondActivity调用finish()

FirstActivity SecondActivity
  onPause()
onRestart()  
onStart()  
onResume()  
  onStop()
  onDestory()

 

 

 

 

 

 

 

 

生命周期应用实例

在Activity中播放音乐

oncreate():

 1     private MediaPlayer mediaplayer;
 2     @Override
 3     protected void onCreate(Bundle savedInstanceState) {
 4         super.onCreate(savedInstanceState);
 5         setContentView(R.layout.activity_main);
 6         Log.i("imformation", "MainActivity onCreate!");
 7         mediaplayer=MediaPlayer.create(this, R.raw.quite);
 8         mediaplayer.start();
 9         
10     }

 

在Activity onPause时,音乐也需要暂停

此时,需要一个记录播放到的位置的变量:private int place;

onPause:

 1        @Override
 2     protected void onPause() {
 3     // TODO Auto-generated method stub
 4     super.onPause();
 5     if(mediaplayer.isPlaying())
 6     {
 7         mediaplayer.pause();
 8         place=mediaplayer.getCurrentPosition();
 9         
10     }
11     Log.i("imformation", "MainActivity onPause!");
12     }

同样,当Activity Resume时,音乐也要接着播放

onResume:

 1     @Override
 2     protected void onResume() {
 3     // TODO Auto-generated method stub
 4     super.onResume();
 5     if(place!=0)
 6     {
 7         mediaplayer.seekTo(place);
 8         mediaplayer.start();
 9     }
10     Log.i("imformation", "MainActivity onResume!");
11     }

 

当Activity 销毁时,音乐播放器也要销毁

 1     @Override
 2     protected void onDestroy() {
 3         // TODO Auto-generated method stub
 4         super.onDestroy();
 5             if(mediaplayer!=null){
 6         mediaplayer.release();
 7         mediaplayer=null;
 8                  }
 9         Log.i("imformation", "MainActivity onDestory!");
10     }        

 

注:本文是学习慕课网Android-重识Activity(http://www.imooc.com/learn/384)时的笔记,如有侵权行为,立即删除

posted @ 2015-07-15 21:48  青萝乱舞  阅读(646)  评论(0编辑  收藏  举报