Comment passer un entier d'une activité à une autre?

je voudrais passer une nouvelle valeur pour un entier d'une activité à une autre. i.e.:

L'activité B contient un

integer[] pics = { R.drawable.1, R.drawable.2, R.drawable.3}

je voudrais que l'activité A passe une nouvelle valeur à l'activité B:

integer[] pics = { R.drawable.a, R.drawable.b, R.drawable.c}

de Sorte qu'en quelque sorte, par le biais de

private void startSwitcher() {
    Intent myIntent = new Intent(A.this, B.class);
    startActivity(myIntent);
}

je peux définir cette valeur entière.

je sais que cela peut être fait d'une façon ou d'une autre avec un paquet, mais je ne suis pas sûr comment je pourrais faire passer ces valeurs de L'activité A à L'activité B.

32
demandé sur Benny 2011-08-16 09:52:31

4 réponses

c'est simple:

Côté De L'Expéditeur:

Intent myIntent = new Intent(A.this, B.class);
myIntent.putExtra("intVariableName", intValue);
startActivity(myIntent);

Côté Du Récepteur:

 Intent mIntent = getIntent();
 int intValue = mIntent.getIntExtra("intVariableName", 0);
93
répondu Paresh Mayani 2017-07-09 10:26:30

il y a deux méthodes que vous pouvez utiliser pour passer un entier. L'un est illustré ci-dessous.

A.class

Intent myIntent = new Intent(A.this, B.class);
myIntent.putExtra("intVariableName", intValue);
startActivity(myIntent);

B.class

Intent intent = getIntent();
int intValue = intent.getIntExtra("intVariableName", 0);

l'autre méthode convertit le nombre entier en chaîne et utilise le code suivant.

A.class

Intent intent = new Intent(A.this, B.class);
Bundle extras = new Bundle();
extras.putString("StringVariableName", intValue + "");
intent.putExtras(extras);
startActivity(intent);

le code ci-dessus passera votre valeur entière en tant que chaîne de caractères à la classe B. sur la Classe B, obtenez la valeur de chaîne de caractères et convertissez à nouveau en tant qu'entier comme indiqué dessous.

B.class

   Bundle extras = getIntent().getExtras();
   String stringVariableName = extras.getString("StringVariableName");
   int intVariableName = Integer.parseInt(stringVariableName);
5
répondu Daniel Nyamasyo 2017-11-12 20:35:49

Dans L'Activité A

private void startSwitcher() {
    int yourInt = 200;
    Intent myIntent = new Intent(A.this, B.class);
    intent.putExtra("yourIntName", yourInt);
    startActivity(myIntent);
}

dans l'Activité B

int score = getIntent().getIntExtra("yourIntName", 0);
1
répondu Lone Coder 2017-11-13 00:32:44

Dans De L'Expéditeur De L'Activité De Côté:

Intent passIntent = new Intent(getApplicationContext(), "ActivityName".class);
passIntent.putExtra("value", integerValue);
startActivity(passIntent);

Récepteur De L'Activité De Côté:

int receiveValue = getIntent().getIntExtra("value", 0);
-2
répondu Ravi makhija 2016-09-02 06:19:39