Android, conversion
Résolu
Pepito39
Messages postés
91
Date d'inscription
Statut
Membre
Dernière intervention
-
Pepito39 Messages postés 91 Date d'inscription Statut Membre Dernière intervention -
Pepito39 Messages postés 91 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaite récuperer l'information d'une zone de texte, mais j'ai deux erreurs:
- The type new View.OnClickListener(){} must implement the inherited abstract method View.OnClickListener.onClick(View)
-Type mismatch: cannot convert from String to R.string
Voici la partie de code où les erreurs surviennent:
Un peu d'aide ne serait pas de refus. Merci d'avance :)
Je souhaite récuperer l'information d'une zone de texte, mais j'ai deux erreurs:
- The type new View.OnClickListener(){} must implement the inherited abstract method View.OnClickListener.onClick(View)
-Type mismatch: cannot convert from String to R.string
Voici la partie de code où les erreurs surviennent:
private OnClickListener rechercheListener = new OnClickListener() {
public void OnClick(View v)
{
string nom = nomclient.getText().toString();
}
};
Un peu d'aide ne serait pas de refus. Merci d'avance :)
14 réponses
-
A Quel objet s'applique le listener ?
Et le nom de la méthode à surcharger s'appel
@Override
public void onClick(View v)
{
} -
Le listener s'applique à un bouton
Oui, j'ai modifié, merci :) et en débuguant l'erreur ne s'affiche plus. -
Et sinon, pour la conversion, tu aurais une idée?
-
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Je l'ai déclaré dans la class MainActivity qui hérite d'Activity
-
Oui mais c'est que type d'bjet un String ? une textView ? ...
-
Re bonjour,
Voici la syntaxe que j'utilise pour mettre des listeners sur des boutons :
// référencement à l'interface graphique
btn = (Button) findViewById(R.id.btn);
// Cette fonction est appellée lorsque l'utilisateur clique sur le boutton
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// ton code
}
});
Si tu fais un copier / coller, ça devrait marcher. Tu dois mettre cette méthode dans ton onCreate de ton activity.
Pour la conversion : De quel type est "nomclient" ? EditText ? TextView? Autre?-
-
-
-
Alors je vous conseil de créer un nouveau fichier java pour déclarer chacune de vos class.
Au lien d'avoir
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// ton code
}
});
Vous aurez
public class votreClass extends ce qu'elle hérite implements ce que vous voulez
{
}
Et pour fais le set :
private votreClass myInstancedeClass;
myInstancedeClass = new votreClass()
btn.setOnClickListener(myInstancedeClass);
De cette manière on évite les fuites de mémoires du a une mauvaise gestion d'un GC capricieux. Et surtout on évite des références non souhaitées ! qui empêche le GC de fonctionner correctement. -
-
-
Aah ^^ C'est un EditText
-
Peut-être le S de "string nom" qui n'est pas en majuscule? l'objet "string" est différent de l'objet "String".
-
En effet, c'était bien ça!
Merci beaucoup! :D -
EN java c'est String mais logiquement le compilateur devrai souligner directement une erreur comme celle la.
Mettez une majuscule à String.
Et Que objet est utilisé pour le setOnClickListener(rechercheListener ) ? -
Avec le plugin SDK, l'objet "string" existe, il se trouve dans la bibliothèque android.R. S'il a fait un import de cette bibliothèque, c'est normal que l'erreur n'est pas directement soulignée mais c'est l'expression qui l'est.
-
Autant pour moi alors, je viens d'apprendre quelques chose merci ;)
-
L'objet pour le setOnClickListener(rechercheListener) est un bouton