Lors de l'utilisation de l'intention, nous pouvons mettre directement différents types de données à l'aide de son PutexTra () code>. Nous pouvons également mettre ces données supplémentaires dans un objet cod> objet code> et l'ajouter à
Intention code>. Alors, pourquoi avons-nous besoin de
Bundle code> si nous pouvons le faire en utilisant code> directement code> directement? P>
4 Réponses :
Supposons que vous devez passer un EDIT strong>: Par exemple, si vous voulez passer une ligne d'une base de données avec d'autres données, il est très pratique de mettre cette ligne dans un Bundle code> d'une activité
code> à un autre. C'est pourquoi
Intention code> vous permet d'ajouter
Bundle code> s comme des champs supplémentaires. P>
Bundle code> et ajoutez cette < Code> Bundle code> à l'intention
code> comme champ supplémentaire. P>
Je demande pourquoi? Nous allons mettre les mêmes données supplémentaires dans l'ensemble et ajouter ce forfait dans l'objet d'intention. Ce que nous puissions mettre directement dans l'objet de l'intention. Ce n'est pas le cas?
Pas, ce n'est pas le cas. Vous pouvez simplement avoir un Bundle code> vous devez passer. Voulez-vous vraiment copier le champ sur le terrain vers l'intention
code>. Et si les clés du
Bundle code> et l'intention
code> se chevauchent? Vous ne pouvez pas savoir toutes les choses que les gens le font, rappelez-vous simplement que vous êtes capable de mettre un code> code> dans une intention
code> et quand vous en avez besoin, vous saurez quoi faire.
Un petit exemple: vous voulez passer une ligne d'une base de données avec d'autres données. Il est très pratique de stocker cette ligne dans un Bundle code>. Dans l'une de mes applications, j'utilise une liste de
Bundle code> S pour passer plusieurs lignes d'une base de données.
Ce n'est pas une raison pratique Buddy.See la raison ci-dessous c'est mieux. +1 pour cela quand même.
Cela dépend de la façon dont vous estimez un niveau de commodité. Je vous ai donné un exemple de la vie réelle, mais je n'ai jamais rencontré une situation lorsque je devais mettre beaucoup de variables au paquet code> simplement parce qu'il y a beaucoup de variables. Habituellement, les gens créent
contrattables code> d'objets dans de telles situations. C'est beaucoup plus sûr et plus facile à comprendre et à entretenir.
Parfois, vous devez passer uniquement un peu de variables code> ou
code> à une autre activité
code>, mais si vous avez un groupe
de variable ou de valeurs code> que vous devez passer à diverses activités
code>. Dans ce cas, vous pouvez utiliser
Bundle code> et transmettre le
Bundle code> dans l'activité
requise code> avec facilité. Au lieu de passer à chaque fois la variable unique. P>
Mextras = Nouvel ensemble (); code> n'est-ce pas assez convaincant? Si vous ne voulez pas vérifier le code source
.java code> vous-même.
Comme vous pouvez le constater, l'intention code> le stocke en interne dans un
Bundle code>.
Je suppose que ce que @Lalit signifie suppose que votre activité passe toujours les mêmes variables à différentes intentions, vous pouvez tous les stocker dans un seul Cela faciliterait la modification du code si l'un des paramètres deviennent obsolètes dans votre code, par exemple. Comme: p> Bundle code> dans votre classe et utilisez simplement l'intention
. Putextras (mbundle) code> Chaque fois que vous avez besoin du même ensemble de paramètres.
for (int i=0; i<array.mSize; i++) {
put(array.keyAt(i), array.valueAt(i));
}