Android 组建-Activity介绍

简介: 活动代表了一个具有用户界面的单一屏幕,如 Java 的窗口或者帧。Android 的活动是 ContextThemeWrapper 类的子类。

Android 活动(Activity)

活动代表了一个具有用户界面的单一屏幕,如 Java 的窗口或者帧。Android 的活动是 ContextThemeWrapper 类的子类。

如果你曾经用 C,C++ 或者 Java 语言编程,你应该知道这些程序从 main() 函数开始。很类似的,Android 系统初始化它的程序是通过活动中的 onCreate() 回调的调用开始的。存在有一序列的回调方法来启动一个活动,同时有一序列的方法来关闭活动,如下面的活动声明周期图所示:

Activity 类定义了下面的回调。你可以不用实现所有的回调方法。当了解其中的每一个非常的重要,实现这些可以保证你的应用行为如用户所期望的那样。

回调

描述

onCreate()

这是第一个回调,在活动第一次创建的时候调用

onStart()

这个回调在活动为用户可见时被调用

onResume()

这个回调在应用程序与用户开始可交互的时候调用

onPause()

被暂停的活动无法接受用户输入,不能执行任何代码。当当前活动将要被暂停,上一个活动将要被恢复时调用(切后台会调用这个,然后切回来先调用onStop()方法,之后就会调用onPause()方法)

onStop()

当活动不在可见时调用(切后台会调用这个)

onDestroy()

当活动被系统销毁之前调用

onRestart()

当活动被停止以后重新打开时调用,切后台回来,会调用onRestart()方法

以下是实例:

packagecom.example.emo;
importandroidx.annotation.Nullable;
importandroidx.appcompat.app.AppCompatActivity;
importandroid.graphics.Color;
importandroid.os.Bundle;
importandroid.os.PersistableBundle;
importandroid.util.Log;
importandroid.view.MotionEvent;
importandroid.view.View;
importandroid.widget.EditText;
importandroid.widget.TextView;
publicclassMainActivityextendsAppCompatActivity {
Stringmsg="activity_demo";
@OverrideprotectedvoidonCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.d(msg, "The onCreate() event");
TextViewview=findViewById(R.id.main_text);
view.setText("你好");
Viewbutton=findViewById(R.id.button);
button.setOnClickListener(
newView.OnClickListener() {
@OverridepublicvoidonClick(Viewview) {
Log.d("button", "i am clicked");
                }
            }
        );
button.setOnTouchListener(newView.OnTouchListener() {
@OverridepublicbooleanonTouch(Viewview, MotionEventmotionEvent) {
Log.d("button", "i am touched");
returnfalse;
            }
        });
Viewbutton_enter=findViewById(R.id.button_enter);
button_enter.setOnClickListener(newView.OnClickListener() {
@OverridepublicvoidonClick(Viewview) {
EditTexteditText=findViewById(R.id.input);
Log.d("edit", editText.getText().toString());
            }
        });
    }
@OverrideprotectedvoidonStart() {
super.onStart();
Log.d(msg, "The onStart() event");
    }
@OverrideprotectedvoidonStop() {
super.onStop();
Log.d(msg, "The onStop() event");
    }
@OverrideprotectedvoidonDestroy() {
super.onDestroy();
Log.d(msg, "The onDestroy() event");
    }
@OverrideprotectedvoidonPause() {
super.onPause();
Log.d(msg, "The onPause() event");
    }
@OverrideprotectedvoidonResume() {
super.onResume();
Log.d(msg, "The onResume() event");
    }
@OverrideprotectedvoidonRestart() {
super.onRestart();
Log.d(msg, "The onRestart() event");
    }
}
TheonCreate() eventTheonStart() eventTheonResume() eventTheonPause() eventTheonStop() eventTheonRestart() eventTheonStart() eventTheonResume() eventTheonPause() eventTheonStop() event
相关文章
|
3月前
|
Android开发 开发者
Android UI设计: 请解释Activity的Theme是什么,如何更改应用程序的主题?
Android UI设计: 请解释Activity的Theme是什么,如何更改应用程序的主题?
42 1
|
3月前
|
数据库 Android开发 开发者
Android基础知识:请解释Activity的生命周期。
Android基础知识:请解释Activity的生命周期。
43 2
|
6月前
|
存储 SQL 人工智能
Android Activity启动流程一:从Intent到Activity创建
Android Activity启动流程一:从Intent到Activity创建
|
2月前
|
Android开发
[Android 四大组件] --- Activity
[Android 四大组件] --- Activity
22 1
|
3月前
|
Android开发
Android基础知识:什么是Fragment?与Activity的区别是什么?
Android基础知识:什么是Fragment?与Activity的区别是什么?
283 54
|
4月前
|
XML 安全 Java
Android Studio App开发入门之活动Activity中为活动补充附加信息讲解及实战(附源码 超详细必看)
Android Studio App开发入门之活动Activity中为活动补充附加信息讲解及实战(附源码 超详细必看)
35 0
|
4月前
|
Android开发
Android Studio App开发入门之在活动之间传递消息(附源码 超详细必看)(包括显示和隐式Intent,向上一个和下一个Activity发送数据)
Android Studio App开发入门之在活动之间传递消息(附源码 超详细必看)(包括显示和隐式Intent,向上一个和下一个Activity发送数据)
44 0
|
4月前
|
Android开发
Android Studio APP开发入门之活动Activity中启停活动页面的讲解及实战(附源码,包括Activity的启动结束、生命周期、跳转等)
Android Studio APP开发入门之活动Activity中启停活动页面的讲解及实战(附源码,包括Activity的启动结束、生命周期、跳转等)
41 0
|
5月前
|
Android开发
安卓activity管理器
安卓activity管理器
27 0
|
6月前
|
SQL 人工智能 Java
Android Activity 启动流程 二:setContentView
Android Activity 启动流程 二:setContentView