ActivityLifecycle 生命周期
来源:互联网 发布:马雅可夫斯基 知乎 编辑:程序博客网 时间:2024/05/22 17:32
package com.gaoo.activitylifecycle;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Button;/** * Activity的生命周期 * 一个界面上有两个按钮 一个是正常普通的按钮 另一个是 对话框风格的按钮 * * 当MainActivity第一次被创建时会依次执行onCreate()、 onStart()和onResume()方法, * 当单击普通的按钮 执行的方法 onPause 和 onStop()方法, * 再次 点击返回按钮 会执行 onRestart()方法,之后又 会依次执行onStart()和onResume()方法, * * 再点击第二个按钮,启动DialogActivity 只会 onPause()方法得到了执行, * 再次 按下 Back键返回 MainActivity也应该只有 onResume()方法会得到执行, * 最后 点击返回键 退出程序 依次会执行onPause()、onStop()和onDestroy()方法. */public class MainActivity extends Activity { public static final String TAG = "MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); if (savedInstanceState != null) { String tempData = savedInstanceState.getString("data_key"); Log.d(TAG, tempData); } Log.d(TAG, "onCreate"); Button startNormalActivity = (Button) findViewById(R.id.start_normal_activity); Button startDialogActivity = (Button) findViewById(R.id.start_dialog_activity); if (startNormalActivity != null) { startNormalActivity.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this, NormalActivity.class); startActivity(intent); } }); } if (startDialogActivity != null) { startDialogActivity.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this, DialogActivity.class); startActivity(intent); } }); } } @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); String tempData = "只是一些临时数据"; outState.putString("data_key",tempData); } @Override protected void onStart() { super.onStart(); Log.d(TAG, "onStart"); } @Override protected void onResume() { super.onResume(); Log.d(TAG, "onResume"); } @Override protected void onPause() { super.onPause(); Log.d(TAG, "onPause"); } @Override protected void onStop() { super.onStop(); Log.d(TAG, "onStop"); } @Override protected void onDestroy() { super.onDestroy(); Log.d(TAG, "onDestroy"); } @Override protected void onRestart() { super.onRestart(); Log.d(TAG, "onRestart"); }}
对话框Activity 继承 Activity
<activity android:name=".DialogActivity" android:theme="@android:style/Theme.Holo.Light.Dialog"> </activity>
0 0
- ActivityLifecycle 生命周期
- ActivityLifeCycle官方demo解析
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- 生命周期
- [高斯消元 线性基 树 记数] BZOJ 2322 [BeiJing2011]梦想封印
- java冒泡排序和选择排序法
- asp.net 调用带证书的webservice解决办法
- 前景检测算法(五)--GMM,GMM2,GMG
- 【C语言】调用函数
- ActivityLifecycle 生命周期
- Java之WeakReference与SoftReference使用讲解
- 剖析LRU算法及LinkedHashMap源码实现机制
- leetcode-Set Matrix Zeroes
- 利用iframe来实现ajax文件上传
- BroadcastReceiver—普通广播
- 华为机试题【7】-尼科彻斯定理
- CentOS6.5下Mysql数据库的安装与配置
- bzoj1901 Zju112 Dynamic Rankings