admin 管理员组

文章数量: 887032


2023年12月25日发(作者:openstack 入门科普)

finishactivity用法

finishActivity是一个Android应用程序开发中常用的一个方法,用于结束某个Activity。当你的应用程序中有多个活动,你可以使用这个方法来结束某个活动并将控制权返回到上一个活动,或者结束整个应用程序。

在代码中使用finishActivity() 方法是非常简单的,只需要调用方法即可,这个方法还可以接受一个参数来指定需要结束的Activity对象。

例如,我们可以在活动A中通过以下代码结束活动B:

Intent intent = new Intent(, );

startActivity(intent);

finishActivity();

在这个例子中,通过intent对象来启动ActivityB,然后通过finishActivity() 语句结束ActivityB并将控制权返回给ActivityA。

除了通过Intent来启动一个Activity之外,还可以使用 startActivityForResult()

方法来打开一个Activity。这个方法的作用是把以一个Intent对象封装启动一个Activity,并且期望在这个Activity完成后返回结果。当这个Activity完成后,会封装一个结果Intent返回给当前的Activity。在这种情况下,我们可以使用finishActivity()

方法关闭调用方的Activity。以下是一个简单的示例,演示如何从一个Activity启动另一个Activity并等待结果:

protected void onActivityResult(int requestCode, int resultCode, Intent data)

{

if (requestCode == REQUEST_CODE && resultCode == RESULT_OK) {

Bundle bundle = ras();

String result = ing("result");

xt(this, result, _SHORT).show();

finishActivity();

}

}

在这个例子中,startActivityForResult() 方法被用来打开ActivityB,REQUEST_CODE是一个自定义的代码,用来表示这次请求的编号。当启动的Activity完成后,系统会调用onActivityResult() 方法,该方法会包含三个参数:

1.请求代码:即前面的requestCode。

2.结果代码:表示Activity返回的结果是成功还是失败。

3.数据Intent:包含从Activity返回的result字符串数据。

在onActivityResult() 方法中,我们可以通过判断requestCode和resultCode来处理ActivityB的返回结果。如果resultCode等于RESULT_OK,表示ActivityB顺利完成,并从返回的Intent中获取名为“result”的数据,这样就可以使用Toast将这个数据消息输出到屏幕上。最后,我们调用finishActivity()方法结束自己的Activity。

finishActivity() 还可以用来结束整个应用程序。例如,当用户按下返回键时,我们在活动的onBackPressed() 方法中可以调用finishActivity() 方法来结束应用程序。以下是一个示例代码:

public void onBackPressed() {

Pressed();

finishActivity();

(0);

}

在这个例子中,当用户按下返回键时,我们调用finishActivity() 来结束当前的Activity,不过由于我们只执行这个方法并不能结束整个应用程序,因此还需要调用(0) 方法。这个方法会结束应用程序的进程,强制退出。如果应用程序只有一个Activity,使用finish() 方法会直接结束应用程序,而不需要调用(0)。

在应用程序开发过程中,使用finishActivity() 方法可以减少内存的消耗,因为它可以顺利的结束某个Activity。如果你的应用程序中有多个Activity,需要注意及时结束不需要的Activity,以免浪费系统的资源。


本文标签: 方法 结束 返回 应用程序 结果