如何使用putextra直接将变量的值从第一个活动传递到第三个活动?

时间:2012-08-29 13:11:54

标签: android android-intent

如何使用putextra直接将变量的值从第一个活动传递到第三个活动?

例如:

我在第一个屏幕(第一个活动)中有一个变量A,如果我点击按钮它将显示第二个屏幕。第二个屏幕(第二个活动)有一个按钮。如果我点击按钮,它将打开第3个屏幕(第3个活动),它将在第3个屏幕的文本视图中显示变量A(第3个活动)。

如何将变量A的值从第一个屏幕直接传递到第三个屏幕(第三个活动)。 (1st-> 3rd)

可以直接传递值吗?或者我应该在第二次活动之前将它传递给第三次活动(第一次 - >第二次 - >第三次)

4 个答案:

答案 0 :(得分:1)

实际上它不可能直接从第一活动转到第三活动......

您必须遵循活动堆栈..

因此,如果您希望数据从第1个传递到第3个,请按照

进行操作

1st - >第二 - >第3次

使用@Lalit Poptani建议的意图

答案 1 :(得分:1)

您可以在任意两个活动之间传递任何值。你只需要做两件事:

  • 在您的FirstActivity中:

    Intent intent = new Intent(context, ThirdActivity.class);
    i.putExtra("value_key", value); //valus is a String
    startActivity(intent);
    
  • 在ThirdActivity的onCreate()

    Bundle b = getIntent().getExtras();
    String value = (String) b.getString("value_key");
    

答案 2 :(得分:0)

您可以将它们保存为静态对象并检索为Myclass.myObject。但你真正想要的是不可能的。

答案 3 :(得分:0)

您可以使用数据库,SharedPreferences,应用程序,静态方法等来在Activity之间共享数据。看here