Variable public dans onCreate(Bundle savedInstanceState){} [Résolu]

- - Dernière réponse : Twinuts
Messages postés
5316
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
18 janvier 2019
- 12 déc. 2018 à 13:10
Bonjour,
Est-il possible de créer une variable public dans < protected void onCreate(Bundle savedInstanceState) ?
Si oui, comment faire cela ?
Je veux l'utiliser à l'extérieur de cette méthode ?
J'utilise Android studio.

Merci
Afficher la suite 

Votre réponse

1 réponse

Messages postés
5316
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
18 janvier 2019
99
0
Merci
Salut,

J'ai pas bien compris ton problème...
Mais si tu veux juste utiliser dans ta classe une variable affectée dans onCreate, c'est possible.
public class Test {
  private UnType mUneVariableGlobale;

  protected void onCreate(Bundle savedInstanceState) {
    mUneVariableGlobale = UnInitialitation.
  }

  /* public/private/protected ça dépend juste de ce que tu veux en faire. */
  public void foo1() {
    // utilisation de mUneVariableGlobale
  }

  /* public/private/protected ça dépend juste de ce que tu veux en faire. */
  public UnType getUnType() {
    return mUneVariableGlobale;
  }
}

Bonjour Twinuts,
C'est cela que je désire faire. Accéder à une variable qui est à l'intérieur de onCreate() depuis l'extérieur.

Grand. Merci. Ça marche bien
Bonjour Twinus,
J'ai essayé le code, mais, protected void onCreate(Bundle savedInstanceState) {} ne reçoit toujours pas un(variable, ...) public. Ca colore tout en rouge.

Voici en bref ce que je veux :
public String mEmail, monEmail;
 protected void onCreate(Bundle savedInstanceState) {
        mEmail = "***@***";
}
id_Email=(EditText)findViewById(R.id.idEmail);
id_Email.setText(mEmail );
monEmail = id_Email.getText().toString();


C'est ce que je dédire faire. Quand je reçois la < monEmail >, je vois que ça retourne une valeur NULL. C'est comme ça me retourne < public String mEmail; > alors que moi je veux que ça me retourne < monEmail >.
Comment faire s'il vous plaît ?
Twinuts
Messages postés
5316
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
18 janvier 2019
99 -
Salut,

Aïe, tu as mit ton code en dehors d'une méthode et ce n'est pas autorisé en Java.
...
private EditText mIdEmail;

protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.ton_activity);
  ...
  String email = "***@***";
  mIdEmail = (EditText)findViewById(R.id.idEmail);
  mIdEmail.setText(email );
  ...
}

/* exemple de récupération du texte sur un clic de bouton */
public void onClick(View v) {
  if(v.getId() == R.id.un_bouton) {
    Log.d("TAG", "Email = " + mIdEmail.getText().tiString());
  }
}

Commenter la réponse de Twinuts

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.