gpt4 book ai didi

java - 将数据从一个 Activity 传递到另一个 Activity ,但稍后再转到另一个 Activity

转载 作者:行者123 更新时间:2023-12-02 07:52:30 28 4
gpt4 key购买 nike

我的工作流程如下:

登录 Activity -> ActivityB -> ActivityC -> ActivityD

我想将数据从LoginActivity传递到ActivityD,但不直接传递到ActivityD。即,我想将数据从 LoginActivity 传递到 ActivityD,但在到达 ActivityD 并在那里获取数据之前先转到 ActivityB 和 ActivityC。

这可能吗?

我知道将数据从一个 Activity 传递到另一个 Activity ,代码如下:

        Intent i = new Intent(getApplicationContext(), AnotherActivity.class); 
i.putExtra("key", (int)1);
i.putExtra("something", something);
startActivity(i);

AnotherActivity 中,您执行以下操作来获取数据:

        Bundle extras = getIntent().getExtras();   
if(extras !=null)
{
String var = extras.getString("something");
}

但是如果我想延迟直接进行 Activity ,这不起作用。因此,如果我取出 startActivity(i); 并转到另一个 Activity 。当在最终 Activity 中获取数据时,程序崩溃。旧的 NullPointerException 弹出了。

有人知道我所描述的方法吗?将数据从一项 Activity 获取到另一项 Activity ,但不立即执行(或启动)该 Activity ?

最佳答案

如果您想像这样传递数据,最好使用共享首选项。它使用简单,您可以在程序中的任何位置使用数据。

SharedPreferences.Editor editor = prefs.edit();
editor.putString("key", (int)1);
editor.putString("something", something);
editor.commit();

收到时:

SharedPreferences prefs = getSharedPreferences(prefName, MODE_PRIVATE); 
String something = prefs.getString("something", null);

关于java - 将数据从一个 Activity 传递到另一个 Activity ,但稍后再转到另一个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10069609/

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