0

1番目のアクティビティから3番目のアクティビティに値を渡したいです。

私の最初の活動: CustomizedListview

2 番目のアクティビティは、SingleMenuItemActivityです。

3 番目のアクティビティは: InsertionExample

ここでは、CustomizedListView (1 番目) アクティビティから InsertionExample (3 番目) アクティビティに orderid 値を渡す必要があります。

どうすればこれを渡すことができますか? 1 番目のアクティビティから 2 番目のアクティビティに orderid 値を渡しました。しかし、1回目のアクティビティから3回目のアクティビティに渡すことはできません。私を助けてください。

4

7 に答える 7

3

これを試して

 Intent intent=new Intent(CustomizedListview.this,InsertionExample.class);
 intent.putExtra("orderid",getOrderid);
 startActivity(intent);

3 番目のアクティビティで

 Bundle bundle = data.getExtras();
 String getOrderId = bundle.getString("orderid");
于 2012-09-05T13:25:23.457 に答える
1

orderid値を最初のアクティビティから2番目のアクティビティに渡す必要があります

2番目のアクティビティに送信するときに送信します。2番目のアクティビティの名前を3番目のアクティビティに変更するだけです。

または

注文IDを共有設定に保存し、3番目のアクティビティで取得するだけです。

SharedPrefernceの例

SharedPreferences myPrefs = this.getSharedPreferences("myPrefs", MODE_WORLD_READABLE);
SharedPreferences.Editor prefsEditor = myPrefs.edit();
prefsEditor.putString("order_id", "5");
prefsEditor.commit();

共有設定を取得します。

 SharedPreferences myPrefs = this.getSharedPreferences("myPrefs", MODE_WORLD_READABLE);
 String prefName = myPrefs.getString("order_id", "0");
于 2012-09-05T13:16:49.003 に答える
1

最初のアクティビティから 2 番目のアクティビティにインテント エクストラを使用し、2 番目から 3 番目の別のインテントで同じ値をエクストラで渡すことができます。

于 2012-09-05T13:22:12.543 に答える
1

次の 2 つの方法で値を渡すことができます。

  1. グローバルクラスを作成してそのクラスに値を設定し、3番目のアクティビティでそのクラスにアクセスします
  2. Intent を使用して、最初のアクティビティから 2 番目のアクティビティに値を送信できます

Intent intent = new Intent (this, 2ndActivity.class); 
    intent.putExtra ("Value",Value);
    startActivity(intent);

そして、2番目のアクティビティから3番目のアクティビティについても同じことができます

Bundle extras = getIntent().getExtras();
    if(extras!=null){
    Values=extras.getString("value");
    }
于 2012-09-05T13:21:31.227 に答える
0

値を静的にしてから、3 番目のアクティビティで使用します。

public static int i;

そして、3 番目のアクティビティで呼び出します。

firstActivity.i;
于 2012-09-05T13:17:27.770 に答える
0

SharedPreferences (小さなデータの場合) を使用してデータを保存し、このデータを 3 つのアクティビティで取得します。それ以外の場合は、内部ストレージまたはデータベースを使用します (大きなデータの場合)。

于 2012-09-05T13:21:56.143 に答える