android 17 activity生命周期

手机指南针传感器处于手机头部。
Activity生命周期:
启动。
onCreat()方法:初始化布局对象,设置监听器。
onstart()方法:注册监听器。
onResume():activity已经是屏幕最前端了,
running,已经是最前端了,可以触摸了,可以响应。
onPause():其他activity把之前的ancity完全遮住了,则调用onPause()方法暂停本acticity,然后调用onStop方法停止这个activity。如果只是部分遮住,则调用onPause()方法暂停本acticity,不调用onStop方法。停止住的acticity的数据和成员变量都是保存的,当挡住的acticity不遮住的时候会重新加载,里面的数据可以重新使用。处于暂停和停止的acticity的数据和成员变量都是保存的可以重新使用。处于暂停和停止的acticity有2种走向,当系统内存不足是会把停止的acticity杀掉,出了暂停的acticity优先级高于停止的acticity,当内存极度缺乏的时候也会杀掉处于暂停的acticity。但系统内存足够的时候,当挡住的activity不再挡住时,处于暂停的acticity调用onResume()方法启动,处于停止的activity调用onRestart()方法启动。
关掉activity时会依次调用onPause()onStop()ondestiry()方法,ondestiry()可以保存数据释放流资源和监听器和网络资源。流资源和数据库占用的是系统内存之外的资源,gc只能回收内存的对象,因此要释放外部资源。
如果系统资源匮乏,处于停止的activity被系统杀掉了则不会执行onDestory(),所以在onStop()方法里面就要释放资源。
第一个activity:
package com.sxt.day04_03; import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener; public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.i("main","onCreate()");
setListener();
} private void setListener() {
findViewById(R.id.button).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(MainActivity.this, SecondActivity.class);
startActivity(intent);
}
});
} @Override
protected void onStart() {
super.onStart();
Log.i("main","onStart()");
} @Override
protected void onResume() {
super.onResume();
Log.i("main","onResume()");
} @Override
protected void onPause() {
super.onPause();
Log.i("main", "onPause()");
} @Override
protected void onStop() {
super.onStop();
Log.i("main","onStop()");
} @Override
protected void onDestroy() {
super.onDestroy();
Log.i("main","onDestroy()");
} @Override
protected void onRestart() {
super.onRestart();
Log.i("main","onRestatr()");
}
}
第二个activity:
package com.sxt.day04_03; import android.app.Activity;
import android.os.Bundle; public class SecondActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
} }
android 17 activity生命周期的更多相关文章
- Android开发——Activity生命周期
Android开发--Activity生命周期 Activity作为四大组件之首,也是使用最频繁的一种组件.本文将主要讲解Activity生命周期,包括正常情况下的Activity生命周期和异常情况下 ...
- android开发------Activity生命周期
这几天工作比较忙,基本没有什么时间更新播客了. 趁着今晚有点时间,我们来简单说一下什么是Activity生命周期和它们各阶段的特征 什么是生命周期 在还没有接触android开发的时候,听到有人说Ac ...
- Android编程: Activity生命周期和LogCat使用
学习内容:Activity生命周期和LogCat使用 ====Activity生命周期==== 图示(转载): 创建 onCreate重启 onRestart开始 onStart恢复 ...
- Android开发--Activity生命周期回顾理解
Activity和Servlet一样,都用了回调机制.我们通过类比servlet来学习Activity.当一个servlet开发出来之后,该servlet运行于Web服务器中.服务器何时创建servl ...
- Android之Activity生命周期简介
概述 有图有真相,所以先上图: 上图是从Android官网截下的Activity的生命周期流程图,结构非常清晰,它描述了Activity在其生命周期中所有可能发生的情况以及发生的先后顺序,下面就将结合 ...
- 浅谈Android之Activity生命周期
Activity作为四大组件之一,出现的频率相当高,基本上我们在android的各个地方都能看见它的踪影,因此深入了解Activity,对于开发高质量应用程序是很有帮助的.今天我们就来详细地聊聊Ac ...
- 【Android】Activity 生命周期具体解释
与其它编程模式不同,android中的Activity没有main()函数.我们无法决定Activity的创建和销毁过程,Activiy的创建和销毁(即生命周期)由系统完毕,系统会在Activity的 ...
- Android关于Activity生命周期详解
子曰:溫故而知新,可以為師矣.<論語> 学习技术也一样,对于技术文档或者经典的技术书籍来说,指望看一遍就完全掌握,那基本不大可能,所以我们需要经常回过头再仔细研读几遍,以领悟到作者的思想精 ...
- Android之Activity生命周期详解
Activity的生命周期方法: onCreate()--->onStart()--->onResume()--->onPause()--->onStop()--->on ...
随机推荐
- Delphi 停靠技术的应用
一.基础知识介绍 1.VCL组件的基础知识 在TWinControl类中有一个DockSite属性(boolean),它的作用是是否允许别的控件停靠在它的上面:在TControl类中有一个DragKi ...
- 设置(TableViewController)通用框架
本文学习于传播播客.李明杰老师.感谢
- 开启g++ 编辑器 c++11特性
以前都是在windows下用vs和cvi写C和C++代码,最近练习Linux下的使用. 编译的时候使用C++11的新特性比如auto 和 iteration特性都报不支持,后来在知乎看到答案需要在编译 ...
- 无Xaml的WPF展示
我们创建一个wpf应用程序,我们把里面的xaml文件全部删除,添加一个新类: 如下图: 然后我们cs文件中的代码: using System; using System.Collections.Gen ...
- WebApi学习总结系列第三篇(Http)此篇持续更新...
越了解Http对WebApi开发就越有帮助,因为WebApi就是建立在Http基础之上的. 一.Http: 通过 <ASP.NET Web API 2 框架揭秘>一书中 了解到 什么叫We ...
- SendMail
public ActionResult SendMail() { MailMessage mss = new MailMessage(); mss.From = new MailAddress(&qu ...
- [小知识]不显示没有内容的UITableViewCell
开发过程中常常使用到UITableView,当tableView的内容不足一屏时,若设置了talbeView的高度为屏幕高度,就会出现没有内容的cell显示出来,效果非常不好看,要想让没有内容的cel ...
- 测试WWW方案(反向代理,负载均衡,HTTP加速缓存)
大约图如下: NGINX FRONT(80)--->VARNISH(8080)---->LNMP BACKEND 1(80) |--->LNMP BACKEND 2(80) 主要是前 ...
- 【UVA11324】The Largest Clique (SCC)
题意: 给一张有向图G,求一个结点数最大的结点集,使得该结点中任意两个结点 u 和 v满足:要么 u 可以到达 v, 要么 v 可以到达 u(u 和 v 相互可达也可以). 分析: Tarjan求SC ...
- 更改linux系统时间
date //查看时间 date -s '21:04:20 2014-06-06' //将时间设为21:04:20 2014-06-06