Jump to content

Récupérer et utiliser la variable d'un edittext de type number


grosluc

Recommended Posts

Bonjour ,

je suis débutant sur android avec des bases de programmation objets c++.

j'essai de réaliser une petite application qui permet de définir le mode de vibreur du téléphone.

j'ai donc déclarer deux edittext avec android:inputType="number" pour ne pouvoir taper que des nombres.

public EditText  valduree1,valpause1;
Button buttonplay,buttonstop;

public void onCreate(Bundle savedInstanceState) {
	super.onCreate(savedInstanceState);
	setContentView(R.layout.modeperso);

	buttonplay=((Button)this.findViewById(R.id.boutonplay2));
	buttonplay.setOnClickListener(this);
	buttonstop=((Button)this.findViewById(R.id.boutonstop2));
	buttonstop.setOnClickListener(this);
	valduree1 = (EditText)this.findViewById(R.id.valduree1);
	valpause1=(EditText)this.findViewById(R.id.valpause1);  
}
public void onClick(View v) {
 Vibrator vib=(Vibrator)getSystemService(Context.VIBRATOR_SERVICE);

 switch (v.getId())
 {
case(R.id.boutonplay2):
long [] tmp ={valduree1,valpause1};
  vib.vibrate(tmp,-1);
	   }
case(R.id.boutonstop2):
 vib.cancel();
break;}
}

je ne sais pas comment récupérer les nombres stockés dans valduree1 et valpause1 pour ensuite les convertir en long et les utiliser dans ma fonction :emo_im_foot_in_mouth:

Merci de votre aide !

Link to comment
Share on other sites

Récupérer la valeur d'un EditText

String valStr = monEditText.getText().toString();

Convertir une chaine de caractère en un entier long

long val = Long.valueOf(valStr);

Pour bien faire, il faudrait aussi gérer les cas d'erreur : chaine vide / contenant autre chose qu'un nombre, ...

Ce qui donnerait

boolean error = true;
long val = 0;
String valStr = monEditText.getText().toString();
if (!TextUtils.isEmpty(valStr)) {
 try {
val = Long.valueOf(valStr);
error = false;
 }
 catch(NumberException e) {
Log.w("XXx", "erreur de conversion", e);
 }
}
if (!error) {
 // on peut utiliser la valeur de val
 ..
}

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...