码迷,mamicode.com
首页 > 其他好文 > 详细

《第一行代码》2章 Activity生命周期理解

时间:2016-08-06 22:06:36      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:activity 生命周期

  1. 启动模式 中singleTask  的理解,举个例子,2个activity  firstActivity second Activity, 点一个切换到第二个,再点第一个切换到第一个,这个时候 firstActivity 是reStart, 而不创建,而secondActivity会销毁,因为它在栈的最上边,firstActivity把它替换掉,所以就onDestroy;

    只要不再显示就会执行onStop(),没有销毁就会经历onRestart(),onStart()重新变得可见。

  2. 比较好的演示生命周期的例子,可以很明显的看到各个活动的创建,停止,销毁,重新启动整个过程,只用一个过滤器就能区分。

    package com.example.activitytest;

    import android.app.Activity;
    import android.os.Bundle;
    import android.util.Log;

    public class BaseActivity extends Activity {

        @Override
        protected void onCreate(Bundle savedInstanceState){
            super.onCreate(savedInstanceState);
            Log.d("BaseActivity","onCreate"+getClass().getSimpleName());
            ActivityCollector.addActivity(this);//static 方法不用new 来实例化对象
        }
        
        @Override
        protected void onDestroy(){
            super.onDestroy();
            ActivityCollector.removeActivity(this);
            Log.d("BaseActivity","onDestroy"+getClass().getSimpleName());//显示那个活动呗销魂
        }
        @Override
        protected void onStop(){
            super.onStop();
            Log.d("BaseActivity","onStop"+getClass().getSimpleName());
        }
        @Override
        protected void onRestart(){
            super.onRestart();
            Log.d("BaseActivity","onRestart"+getClass().getSimpleName());
        }
        @Override
        protected void onStart(){
            super.onStart();
            Log.d("BaseActivity","onStart"+getClass().getSimpleName());
        }

    }

    让其他Activity 都继承BaseActivity,因为其他的Activity都会super.onCreate(),super.onStop(),super.onDestroy(),就会先调用BaseActivity中的相关内容;

  3. 几个小技巧:Log.d("BaseActivity","onCreate"+getClass().getSimpleName()); 得到类名;

    Log.d("SecondActivity","Task ID is"+getTaskId());//得到任务ID


本文出自 “7124048” 博客,请务必保留此出处http://7134048.blog.51cto.com/7124048/1835065

《第一行代码》2章 Activity生命周期理解

标签:activity 生命周期

原文地址:http://7134048.blog.51cto.com/7124048/1835065

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!