Activity介绍

本文介绍了Android中的核心组件Activity,包括它的作用、屏幕交互、生命周期回调及如何在应用中创建和管理Activity。Activity之间可以互相跳转,系统通过返回栈管理它们的状态。创建Activity涉及实现生命周期方法,如onCreate()。每个Activity需在清单文件中声明,并通过Intent启动。此外,使用finish()或finishActivity()可结束Activity。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,什么是Activity

  • Activity是一个Android的应用组件,它提供屏幕进行交互。

  • 每个Activity都会获得一个用于绘制其用户界面的窗口,窗口可以充满哦屏幕也可以小于屏幕并浮动在其他窗口之上。

  • 一个应用通常是由多个彼此松散联系的Activity组成,一般会指定应用中的某个Activity为主活动,也就是说首次启动应用时给用户呈现的Activity。将Activity设为主活动的方法,

 

2,Activity跳转流程:

【1】当然Activity之间可以进行互相跳转,以便执行不同的操作。每当新Activity启动时,旧的Activity便会停止,但是系统会在堆栈也就是返回栈中保留该Activity。

 

【2】当新Activity启动时,系统也会将其推送到返回栈上,并取得用户的操作焦点。当用户完成当前Activity并按返回按钮是,系统就会从堆栈将其弹出销毁,然后恢复前一Activity当一个Activity因某个新Activity启动而停止时,系统会通过该Activity的生命周期回调方法通知其这一状态的变化。

 

【3】Activity因状态变化每个变化可能有若干种,每一种回调都会提供执行与该状态相应的特定操作的机会

 

3,创建Activity

【1】要创建Activity,必须创建Activity的子类。

 

【2】在子类中实现Activity在生命周期的各种状态之间转变时例如创建 Activity、停止 Activity、恢复 Activity 或销毁 Activity 时)系统调用的回调方法。

 

【3】Android Studio中新建项目默认创建的代码为


 

public class MainActivity extends AppCompatActivity {

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

    }

}

  • onCreate()方法:必须实现的方法,系统在创建Activity时调用此方法。您应该在实现内初始化Activity的必要组件,必须在此方法调用setContentView(),用来定义Activity用户界面布局(XML文件)

 

4,在清单文件中声明Activity

【1】每次新建的Activity都需要在AndroidManifest文件中添加如下内容,并将元素添加为元素的子项

  • 如下面代码所示需要在AndroidManifest文件中添加以下内容

<application>

     ....

    <activity android:name=".MainActivity">

            <intent-filter>

                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />

            </intent-filter>

     </activity>

     ....

</application>     

 

 

5,启动Activity

【1】该部分用于描述如何启动Activity。作为主活动,在应用开启的时候就会系统创建,而用户不仅仅只需要主活动界面,用户需要界面的跳转,而界面的跳转也是其他活动界面(Activity)启动。

 

  • 在该部分仅仅只提及利用显示Intent方式跳转活动,代码如下


Intent intent = new Intent(this, SignInActivity.class);

startActivity(intent);

//this,为本Acitivity的上下文;第二个参数为你要跳转的目的Activity.

6,结束Activity

通过调用Activity的finish()方法来结束Activity还可以通过调用finishActivity()结束之前启动的活动

 

【1】关于finishActivity()的理解:

 

  • 你通过 MainActivity 来启动 ActivityA (使用 startActivityForResult 方法),那么你在 MainActivity 这个类中需要重写 onActivityResult() 这个方法,

然后,你可以在 onActivityResult() 中通过 finishActivity() 方法去结束掉 ActivityA

 

 

 

 

 

 

更多关于Activity 详解:https://blog.youkuaiyun.com/cricket_7/category_9571387.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

兴帅_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值