finishactivity用法
    finishActivity是一个Android应用程序开发中常用的一个方法,用于结束某个Activity。当你的应用程序中有多个活动,你可以使用这个方法来结束某个活动并将控制权返回到上一个活动,或者结束整个应用程序。
    在代码中使用finishActivity() 方法是非常简单的,只需要调用方法即可,这个方法还可以接受一个参数来指定需要结束的Activity对象。
    例如,我们可以在活动A中通过以下代码结束活动B:
    Intent intent = new Intent(ActivityA.this, ActivityB.class);
    startActivity(intent);
    finishActivity(ActivityB.class);
    在这个例子中,通过intent对象来启动ActivityB,然后通过finishActivity(ActivityB.class) 语句结束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) {
安卓intent用法
    if (requestCode == REQUEST_CODE && resultCode == RESULT_OK) {
      Bundle bundle = Extras();
      String result = String("result");
      Toast.makeText(this, result, Toast.LENGTH_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() {
    BackPressed();
    finishActivity();
    it(0);
    }
    在这个例子中,当用户按下返回键时,我们调用finishActivity() 来结束当前的Activity,不过由于我们只执行这个方法并不能结束整个应用程序,因此还需要调用it(0) 方法。这个方法会结束应用程序的进程,强制退出。如果应用程序只有一个Activity,使用finish() 方法会直接结束应用程序,而不需要调用it(0)。
    在应用程序开发过程中,使用finishActivity() 方法可以减少内存的消耗,因为它可以顺利
的结束某个Activity。如果你的应用程序中有多个Activity,需要注意及时结束不需要的Activity,以免浪费系统的资源。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。