android activity生命周期以及横竖屏切换问题

自己重写activity的几个生命周期的方法,运行下就知道是怎么回事,实在懒得人可以看下:点击打开链接

onCreate   :创建activity时执行,只执行一次。

onStart      :界面可见的时候执行。

onResume:界面获得焦点,按钮可点击时执行。

onPause   :界面失去焦点,按钮不可点击时执行。

onStop      :界面不可见时执行。

onDestroy :销毁,只执行一次。

onRestart  :界面之前出现过,未销毁,从不可见状态回到可见状态时,执行onRestart再执行onStart

使用场景:

1.应用程序退出自动保存数据   ondestory   oncreate

2.应用程序最小化 暂停的操作  onstop onstart  视频播放器

3.游戏的暂停和开始 前台生命周期

横竖屏对Activity生命周期时有影响的!!

竖屏切换到横屏会销毁在创建,如果你不做处理,那么之前数据会丢失!

横屏切换到竖屏会有两次生命周期,中间也会销毁,数据还是会丢失。

解决办法:加上红色这句:

<activity android:name=".MainActivity" android:label="@string/app_name"
          android:configChanges="orientation|keyboardHidden|screenSize">



orientation   :消除横竖屏影响。

keyboardHidden :消除键盘影响

screenSize :消除屏幕大小改变影响,这个属性在4.0之前可以不设置,4.0及以上必须设置。

时间: 2024-08-24 16:25:09

android activity生命周期以及横竖屏切换问题的相关文章

Android之Activity生命周期及横竖屏切换

Activity有三个状态: 当它在屏幕前台时(位于当前任务堆栈的顶部),它是激活或运行状态.它就是响应用户操作的Activity. 当它失去焦点但仍然对用户可见时(如右图),它处于暂停状态.即在它之上有另外一个Activity.这个Activity也许是透明的,或者没有完全覆盖全屏,所以被暂停的Activity仍对用户可见.暂停的Activity仍然是存活状态(它保留着所有的状态和成员信息并保持和窗口管理器的连接),但系统处于极低内存时仍然可以杀死这个Activity. 完全被另一个Activ

Fragment和Activity生命周期以及横竖屏切换对生命周期的影响

Fragment生命周期图解,fragment和activity生命周期对比 生命周期变化 : 切换到该Fragment 05-21 14:26:35.095: D/FragmentDemo(7649): onAttach 05-21 14:26:35.095: D/FragmentDemo(7649): onCreate 05-21 14:26:35.095: D/FragmentDemo(7649): onCreateView 05-21 14:26:35.100: D/FragmentDe

android开发之activity横竖屏切换时的生命周期以及横竖屏切换时的资源适配方案

背景:之前有过两篇写activity的博客 android之activity的生命周期详解:详细介绍了activity的整个生命周期.各状态间的转换和返回桌面时保存activity的状态 android之activity中onSaveInstanceState和onRestoreInstanceState的触发时机:介绍了activity中这两个方法的触发时机和作用 本篇博客会牵扯到里面的内容,如果你都有所了解可以直接往下看,如果不了解可以进去回忆下. 问题:在做应用的退出对话框时,发现如果对话

Android Activity生命周期 onSaveInstanceState和onRestoreInstanceState

当某个activity变得"容易"被系统销毁时,该activity的onSaveInstanceState就会被执行,除非该activity是被用户主动销毁的,例如当用户按BACK键的时候. 注意上面的双引号,何为"容易"?言下之意就是该activity还没有被销毁,而仅仅是一种可能性.这种可能性有哪些?通过重写一个activity的所有生命周期的onXXX方法,包括onSaveInstanceState和onRestoreInstanceState方法,我们可以清

Android Activity 生命周期的透彻理解

说来惭愧,虽然已经做了一年多的android开发,但是最近被人问起activity的生命周期的时候,却感觉自己并不能很自信很确定的回答对方的问题,对activity的生命周期的理解还不透彻啊.     既然发现了问题,那咱就得解决问题,不就个生命周期,能有多复杂. 首先看看android developers 网上的activity的生命周期图:      activity启动的时候:onCreate ---> onStart ---> onResume 这个过程不用多说,大家都知道.这里主要

Android Activity生命周期图解

Android 中 Activity生命周期 从网上摘的 事件回调方法  以下1-4 不可终止 . 1. onCreate()   :Activity 启动后第一个被调用的方法 ,常用来进行Activity的初始化,例如创建View.绑定数据或者恢复信息等 .. (? oncreate 可以恢复什么信息 ) 2. onStart() : 当Activity显示在屏幕上时,该方法被调用 3. onRestart() :当Activity从停止状态进入活动状态前,调用该方法 . 4.onResume

两分钟彻底让你明白Android Activity生命周期(图文)!

首先看一下Android api中所提供的Activity生命周期图(不明白的,可以看完整篇文章,在回头看一下这个图,你会明白的): Activity其实是继承了ApplicationContext这个类,我们可以重写以下方法,如下代码: 1 public class Activity extends ApplicationContext { 2         protected void onCreate(Bundle savedInstanceState);        3       

Intent七大属性,Activity的启动方式,横竖屏切换的生命周期,现场保护--&gt;

---------------------------------Intent七大属性------------------------------------- 第一类:启动,有ComponentName(显式),Action(隐式),Category(隐式). 第二类:传值,有Data(隐式),Type(隐式),Extra(隐式.显式). 第三类:启动模式,有Flag. ---------------------------------------Activity的启动方式----------

android --Activity生命周期具体解释

一. 再探Activity生命周期 为了研究activity的生命周期,简单測试代码例如以下. package com.example.testactivity; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.Menu; public class MainActivity extends Activity { private static fi