Android 如何将值从第一个活动传递到第三个活动

Android 如何将值从第一个活动传递到第三个活动,android,android-intent,xml-parsing,sharedpreferences,Android,Android Intent,Xml Parsing,Sharedpreferences,我希望将值从第一个活动传递到第三个活动 我的第一项活动: 第二项活动是: 第三项活动是: 在这里,我必须将orderid值从CustomisedListView(第一个)活动传递到InsertionExample(第三个)活动 我怎么能通过这个?我已将orderid值从第一个活动传递到第二个活动。但我无法将它从第一个活动传递到第三个活动。请帮帮我 我必须将orderid值从第一个活动传递到第二个活动 Bundle extras = getIntent().getExtras(); if(

我希望将值从第一个活动传递到第三个活动

我的第一项活动:

第二项活动是:

第三项活动是:

在这里,我必须将orderid值从CustomisedListView(第一个)活动传递到InsertionExample(第三个)活动

我怎么能通过这个?我已将orderid值从第一个活动传递到第二个活动。但我无法将它从第一个活动传递到第三个活动。请帮帮我

我必须将orderid值从第一个活动传递到第二个活动

Bundle extras = getIntent().getExtras();
    if(extras!=null){
    Values=extras.getString("value");
    }
发送到第二个活动时发送。只需将第二个活动的名称更改为第三个活动

或 只需将订单Id存储在共享首选项中,并在第三个活动中获取它

SharedPreference示例 获得共享偏好

 SharedPreferences myPrefs = this.getSharedPreferences("myPrefs", MODE_WORLD_READABLE);
 String prefName = myPrefs.getString("order_id", "0");
我必须将orderid值从第一个活动传递到第二个活动

Bundle extras = getIntent().getExtras();
    if(extras!=null){
    Values=extras.getString("value");
    }
发送到第二个活动时发送。只需将第二个活动的名称更改为第三个活动

或 只需将订单Id存储在共享首选项中,并在第三个活动中获取它

SharedPreference示例 获得共享偏好

 SharedPreferences myPrefs = this.getSharedPreferences("myPrefs", MODE_WORLD_READABLE);
 String prefName = myPrefs.getString("order_id", "0");

将该值设置为静态,然后在第三个活动中使用该值

public static int i;
然后,在第三个活动中调用它:

firstActivity.i;

将该值设置为静态,然后在第三个活动中使用该值

public static int i;
然后,在第三个活动中调用它:

firstActivity.i;

可以通过两种方式传递值:

  • 要么创建一个全局类并在该类中设置值,然后 在第三个活动中访问该课程
  • 您可以使用Intent将您的值从第一个活动发送到第二个活动

  • 第二个活动到第三个活动也可以这样做

    Bundle extras = getIntent().getExtras();
        if(extras!=null){
        Values=extras.getString("value");
        }
    

    可以通过两种方式传递值:

  • 要么创建一个全局类并在该类中设置值,然后 在第三个活动中访问该课程
  • 您可以使用Intent将您的值从第一个活动发送到第二个活动

  • 第二个活动到第三个活动也可以这样做

    Bundle extras = getIntent().getExtras();
        if(extras!=null){
        Values=extras.getString("value");
        }
    
    使用SharedReferences(用于小数据)存储数据并在您的活动中获取此数据 否则,请使用内部存储或数据库(用于大数据)

    使用SharedReferences(用于小数据)存储数据并在您的活动中获取此数据
    否则使用内部存储或数据库(用于大数据)

    您可以在第一个活动到第二个活动中使用intent extra,然后在第二个活动到第三个活动中通过extra传递相同的值。

    您可以在第一个活动到第二个活动中使用intent extra,然后在第二个活动到第三个活动中通过extra传递相同的值。

    试试这个

     Intent intent=new Intent(CustomizedListview.this,InsertionExample.class);
     intent.putExtra("orderid",getOrderid);
     startActivity(intent);
    
    在你的第三个活动中

     Bundle bundle = data.getExtras();
     String getOrderId = bundle.getString("orderid");
    
    试试这个

     Intent intent=new Intent(CustomizedListview.this,InsertionExample.class);
     intent.putExtra("orderid",getOrderid);
     startActivity(intent);
    
    在你的第三个活动中

     Bundle bundle = data.getExtras();
     String getOrderId = bundle.getString("orderid");
    

    最好不要将其存储在静态值中,而是存储在单例中,例如扩展应用程序类并将其存储在何处。如果您的应用程序在内存不足后在第三个活动中返回,则其值为
    ,因此可能会导致意外崩溃等。(除非您将saveData持久化到BaseActivity.onSaveInstanceState内部捆绑并严格恢复它一次,并且您的第三个活动是singleTask,因此您可能无法更改由第三个活动的多个实例读取的全局变量。)最好不要将其存储在静态值中,而是存储在单例中,例如扩展应用程序类并将其存储在何处。如果您的应用程序在内存不足后在第三个活动中返回,则其值为
    ,因此可能会导致意外崩溃等。(除非您将saveData持久化到BaseActivity.onSaveInstanceState内部捆绑并严格恢复它一次,并且您的第三个活动是singleTask,因此您无法潜在地更改由第三个活动的多个实例读取的全局变量。)这不是共享首选项的用途这不是共享首选项的用途