文档章节

Activity生命活动周期

 邹翔翔
发布于 2016/07/26 17:36
字数 337
阅读 3
收藏 0
package com.example.mrzou.project002_activity;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Button;

public class MainActivity extends Activity {
   final String TAG ="tag";
    private Button bt;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        // 添加一个输出日志:Log.i("标签";"输出内容")
        Log.i(TAG, "MainActvity -->OnCreate");
        bt=(Button)findViewById(R.id.button);
        bt.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //点击按钮,启动第二个Activity
                Intent intent =new Intent(MainActivity.this,Second_Activity.class);
                MainActivity.this.startActivity(intent);
            }
        });
            }

    @Override
    protected void onStart() {
        super.onStart();
        Log.i(TAG, "MainActvity -->onStart");
    }

    @Override
    protected void onResume() {
        super.onResume();
        Log.i(TAG, "MainActvity -->onResume");
    }

    @Override
    protected void onPause() {
        super.onPause();
        Log.i(TAG, "MainActvity -->onPause");
    }

    @Override
    protected void onStop() {
        super.onStop();
        Log.i(TAG, "MainActvity -->onStop");
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        Log.i(TAG, "MainActvity -->onDestroy");
    }

    @Override
    protected void onRestart() {
        super.onRestart();
        Log.i(TAG, "MainActvity -->onRestart");
    }
}

AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.mrzou.project002_activity">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:theme="@style/AppTheme.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".Second_Activity"
            android:theme="@android:style/Theme.DeviceDefault.Dialog"/>
    </application>

</manifest>

(1)从启动到后台,再到前台的生命周期: onCreate() —> onStart() —> onResume() —> onPause —> onStop() —> onRestart() —> onStart() —> onResume()

这份代码主要是通过点击第一份代码的Button,跳转到第二个Activity了解其生命周期(从启动到失去焦点,再到获取到焦点的生命周期)。主要是:onCreate() —>onStart()                      —>onResume() —>onPause() —>onResume()

 

© 著作权归作者所有

共有 人打赏支持
粉丝 0
博文 6
码字总数 1171
作品 0
福州
程序员
私信 提问
Android LiveData简介(一)

Android LiveData简介(一) 使用Android的LiveData,需要在gradle添加引用: (二)构建Observer,在Observer的onChanged中等待变化数据传导过来。 在LiveData中的数据变化,通过postValue...

开开心心过
2017/11/21
0
0
Android Service 详解五:前台运行与生命期

在前台运行Service 一个前台的service是被用户强烈关注的从而不会在内存低时被系统杀死.前台service必须在状态栏上提供一个通知,这个通知被放在"正在进行"区域中,这表示这个通知不能被解...

晨曦之光
2012/03/12
0
0
在前台运行Service与管理Service的生命期

一、前台运行Service 一个前台的service是被用户强烈关注的从而不会在内存低时被系统杀死.前台service必须在状态栏上提供一个通知,这个通知被放在"正在进行"区域中,这表示这个通知不能被...

Carbenson
2015/11/08
0
0
Android必备:Activity 活动 和 Intent 意图 的学习整理

看这里:Android必备:Activity 活动 和 Intent 意图 的学习整理 在Android必备:Android UI控件的了解与学习中,对AndroidUI做了初步的了解和学习,本篇继续进行Android开发学习的整理。And...

Realfighter
2015/03/04
0
0
Android app开发常用知识列举

在Activity可见时进行页面刷新,即处于Activity栈顶,当然,这种刷新操作 可以在onStart,onResume,onRestart,onNewIntent+singleTask中,但最好的位置是onResume,其他方式可能会造成窗体泄露...

IamOkay
2015/02/14
0
1

没有更多内容

加载失败,请刷新页面

加载更多

通过Docker容器连接代理Wormhole

Wormhole 是一个能识别命名空间的由 Socket 激活的隧道代理。可以让你安全的连接在不同物理机器上的 Docker 容器。可以用来完成一些有趣的功能,例如连接运行在容器本机的服务或者在连接后创...

Linux就该这么学
24分钟前
1
0
从架构到平台, POWER 9处理器最全解读

本文根据IBM中国芯片设计部门高级经理尹文,在「智东西公开课」的超级公开课IBM专场《POWER 9-认知时代的驱动力》 上的系统讲解整理而来。 本次讲解中,尹文老师从内核微架构、总线互连、异构...

Mr_zebra
27分钟前
1
0
openjdk和oraclejdk有什么区别吗?

1.授权协议的不同:OpenJDK采用GPL V2协议放出,而SUN JDK则采用JRL放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL V2允许在商业上使用,而JRL只允许个人研究使用。 2.Open...

吴伟祥
28分钟前
2
0
c++基类析构函数要声明为virtual的原因

更深层的原因不知道,不过标准规定,如果不声明为virtual,那么将会导致未定义行为。个人测试结果表明,如果不声明为virtual,那么派生类的析构函数将不会得到调用

安非他命
34分钟前
2
0
CentOS 7下protobuf的源码编译安装

protobuf的github地址:https://github.com/google/protobuf支持多种语言,有多个语言的版本,本文采用的是在CentOS 7下编译源码进行安装。 github上有详细的安装说明:https://github.com/...

xtof
41分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部