gpt4 book ai didi

java - 将消息从多个 Activity 传递到主要 Activity

转载 作者:太空狗 更新时间:2023-10-29 12:57:10 24 4
gpt4 key购买 nike

很难解决我的问题,但这里是。

我有一个 Activity Activity 1,由此我可以打开三个 Activity 之一 Activity 2 Activity 3 Activity 4,我希望其中的结果来自 Activity 3。在这些 Activity 中的每一个中,我都可以创建一个新的 Intent 来打开任何其他 Activity ,进而对当前 Activity 调用 finish()

当我从 Activity 1 打开 Activity 3 然后按下按钮完成 Activity 3 时,我有代码工作,它发送消息完美。我的问题在于说从 Activity 1 打开 Activity 2 然后从 Activity 2 打开 Activity 3 (依次调用Activity 2 上的 finish()),然后按下 Activity 3 中的按钮并将相同的消息发送到 Activity 1。目前发送的结果代码为 0,当我试图让它发送结果代码“726”时。

总而言之,我希望能够从一个 Activity 发送消息,该 Activity 是根据来自未知级别的其他 Activity 的 Intent 创建的,但如果有意义的话,消息总是返回到相同的最低级别 Activity。

如果这很难理解,我很抱歉,我希望有人能帮助我

最佳答案

我讨厌回答我自己的问题,但我还是为其他寻找答案的人找到了答案:

来自主要 Activity

 public void onClick2Activity(View v){
Intent i = new Intent();
i.setClass(1Activity.this, 2Activity.class);
startActivityForResult(i, 0);
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(resultCode==726){
Bundle bundle = data.getExtras();
int string = bundle.getInt("test");
Log.v("Extra", "" + string);
Toast.makeText(this, "Pass", Toast.LENGTH_LONG).show();
}
else{
Toast.makeText(this, "Fail", Toast.LENGTH_LONG).show();
}
}

来自 2Activity:

    public void onClick3Activity(View v){
Intent i = new Intent();
i.setClass(2Activity.this, 3Activity.class);
startActivityForResult(i, 1);
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(resultCode==726){
Intent in = new Intent();
in.putExtra("test", "test");
setResult(726,in);
finish();
}
else{
Log.v("Failed", "Failed");
}
}

来自 3Activity:

public void onItemClick(){ 
Intent in = new Intent();
weaponID = position + 1;
in.putExtra("test", "test");
setResult(726,in);
finish();
}

关于java - 将消息从多个 Activity 传递到主要 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5167053/

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