新创建一个Activity,用来此次测试。

先贴代码

 package com.hugo.apj.activitylifetest;

 import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log; public class MainActivity extends AppCompatActivity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.i("TAG","OnCreate");
} @Override
protected void onStart() {
Log.i("TAG","OnStart");
super.onStart();
} @Override
protected void onPause() {
Log.i("TAG","OnPause");
super.onPause();
} @Override
protected void onStop() {
Log.i("TAG","OnStop");
super.onStop();
} @Override
protected void onRestart() {
Log.i("TAG","OnRestart");
super.onRestart();
} @Override
protected void onResume() {
Log.i("TAG","OnResume");
super.onResume();
} @Override
protected void onDestroy() {
Log.i("TAG","OnDestroy");
super.onDestroy();
}
}

以下为测试结果:

第一次运行出现:

  

08-05 15:56:48.282 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnCreate
08-05 15:56:48.283 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnStart
08-05 15:56:48.283 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnResume

先清除Logcat,从竖屏转换到横屏:

08-05 16:01:01.363 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnPause
08-05 16:01:01.364 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnStop
08-05 16:01:01.364 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnDestroy
08-05 16:01:01.429 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnCreate
08-05 16:01:01.429 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnStart
08-05 16:01:01.430 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnResume

同样清除Logcat,再从横屏转换到竖屏:

08-05 16:01:37.330 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnPause
08-05 16:01:37.333 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnStop
08-05 16:01:37.333 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnDestroy
08-05 16:01:37.399 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnCreate
08-05 16:01:37.399 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnStart
08-05 16:01:37.400 20772-20772/com.hugo.apj.activitylifetest I/TAG: OnResume

从以上结果可以发现,在不讨论添加其他限制代码的情况下,横竖屏转换都会重新走完除了OnRestart外的其他六个生命周期。

Android Activity横竖屏转换的生命周期的更多相关文章

  1. [android] activity横竖屏切换的生命周期

    模拟器横竖屏切换,ctrl+f11 界面activity会销毁,重新打开创建 第一种做法: 定死就是横屏 在清单文件,<activity/>节点部分,添加属性,设置屏幕朝向 android ...

  2. 无废话Android之activity的生命周期、activity的启动模式、activity横竖屏切换的生命周期、开启新的activity获取他的返回值、利用广播实现ip拨号、短信接收广播、短信监听器(6)

    1.activity的生命周期 这七个方法定义了Activity的完整生命周期.实现这些方法可以帮助我们监视其中的三个嵌套生命周期循环: (1)Activity的完整生命周期 自第一次调用onCrea ...

  3. Android屏幕横竖屏切换和生命周期管理的详细总结

    一般的我们去切换屏幕方向都是不希望Activity被重新创建,这时就需要对一些属性进行设置,或者使用代码设置.        今天想学一下Android屏幕横竖屏切换,但是网上很多知识不准确或不正确, ...

  4. 你还在问android横竖屏切换的生命周期?

    本文原创,转载请注明来自xiaoQLuhttp://www.cnblogs.com/xiaoQLu/p/3324503.html 开源帮助android获得了飞速的发展,开源也导致了数不清的碎片问题. ...

  5. Android横竖屏切换的生命周期

    1.新建一个Activity,并把各个生命周期打印出来 2.运行Activity,得到如下信息 onCreate--> onStart--> onResume--> 3.按crtl+ ...

  6. Activity 横竖屏切换

    前言 在开发中常要处理横竖屏切换,怎么处理先看生命周期 申明 Activity 横竖屏切换时需要回调两个函数 ,所以在此将这个两个函数暂时看成是Activity 横竖屏切换的生命周期的一部分,这两个函 ...

  7. Android 中Activity生命周期分析:Android中横竖屏切换时的生命周期过程

    最近在面试Android,今天出了一个这样的题目,即如题: 我当时以为生命周期是这样的: onCreate --> onStart -- ---> onResume ---> onP ...

  8. Android四大基本组件介绍与生命周期

    Android四大基本组件介绍与生命周期 Android四大基本组件分别是Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器 ...

  9. Android 切换横竖屏

    一个项目一般会自己先定义项目是横屏还是竖屏但是也有可以横屏和竖屏之间切换的activty. 切换横竖屏的方法: //判断当前屏幕方向if(getRequestedOrientation() == Ac ...

随机推荐

  1. servlet跳转jsp

    ackage com.monkey.servlet; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; im ...

  2. 学习Swift -- 拓展

    拓展(Extension) 扩展就是向一个已有的类.结构体.枚举类型或者协议类型添加新功能.这包括在没有权限获取原始源代码的情况下扩展类型的能力(即逆向建模).扩展和 Objective-C 中的分类 ...

  3. Elasticsearch客户端大全 http://www.searchtech.pro/elasticsearch-clients

    Elasticsearch有各种语言的客户端,下面一一列出来: Perl ElasticSearch.pm: Perl客户端 Python pyes: Python客户端pyelasticsearch ...

  4. android ListView 多次调用 getView方法

    <ListView            android:layout_width="match_parent"            android:layout_heig ...

  5. 一个消除if语句的例子

    // 一个按钮点击事件,判断点击按钮是那一个显示出他的信息 - (IBAction)buttonPressed:(id)sender { if (sender == self.leftButton) ...

  6. python 运行 hadoop 2.0 mapreduce 程序

    要点:#!/usr/bin/python 因为要发送到各个节点,所以py文件必须是可执行的. 1) 统计(所有日志)独立ip数目,即不同ip的总数 ####################本地测试## ...

  7. sqlplus 打印很乱,而且很短就换行

    set linesize 可以解决 设置行打印的字符长度,set linesize 400解决

  8. bootstrap的栅格布局不支持IE8该如何解决

    用bootstrap的栅格布局在IE8上出现失效的情况,通常有两种解决方式 方法/步骤   方法一:引用第三方js,一个叫respond.js的东西,github上可以搜到   方法二:由于IE8不支 ...

  9. Contest20140710 eagleeggs

    eagleeggs|eagleeggs.in|eagleeggs.out 题目描述: 共有N个硬度相同的鹰蛋,硬度是一个整数(并且已知其不大于H),表示这个蛋从天上掉下来不摔碎的最大高度.为了找出这个 ...

  10. ios6,ios7,ios7.1下设置UISearchbar的背景色

    ios系统升级到7.1后,原来在7.0下显示正常的UISearchbar现在又出现问题了.究其原因,是由于UISearchbar的subview又做修改了. float version = [[[ U ...