gpt4 book ai didi

android如何从其他 Activity 完成 Activity

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:50:34 26 4
gpt4 key购买 nike

在我的应用程序中,我有 3 个 Activity 。

从第一个 Activity 进入第二个 Activity ,从第二个 Activity 进入第三个 Activity 。从 3 日开始,它又回到了 1 日。如果我从 1st 开始按返回键,那么它应该转到主屏幕(应用程序将停止)。如果我按下第一个的后退键,它会再次进入第二个 Activity ,如果我按第二个的后退键,那么它会进入第一个。然后,如果我按 1st 的后退键,应用程序将停止。

我想要的是,当我在第三个 Activity 中并按下后退按钮时,它应该转到第一个并同时完成第二个 Activity 。

我该怎么做?

最佳答案

打开第三个activity就完成第二个activity

假设在第二个 Activity 中点击某个按钮您正在使用开始 Activity 打开第三个 Activity ;

startActivity(intent);
finish();//this will finish second activity and open third activity so when you press back from third activity it will open first activity.

如果你想依赖于某些条件,那么就依赖于 Activity

setResult(123);

像这样的代码

现在在第二个 Activity 中覆盖 onActivityResult

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(resultCode==123){
//finish
}
}

还要确保你需要使用 startActivityForResult(intent, requestCode);为第二个 Activity 的结果启动第三个 Activity 。

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class Activity2 extends Activity{

Button button;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main1);

button.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
startActivityForResult(new Intent(new Intent(Activity2.this,Activity3.class)), 12);
}
});
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {

if(resultCode==123 && requestCode==12){
finish();
}
super.onActivityResult(requestCode, resultCode, data);
}
}


import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class Activity3 extends Activity{

Button button;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main1);
button.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
setResult(123);
}
});
}
}

关于android如何从其他 Activity 完成 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7511216/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com