grosluc Posté(e) 1 février 2012 Posté(e) 1 février 2012 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 ! Citer
chpil Posté(e) 2 février 2012 Posté(e) 2 février 2012 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 .. } Citer
grosluc Posté(e) 2 février 2012 Auteur Posté(e) 2 février 2012 Bonjour , Rapide, serieux , simple , bien éxpliqué ! rien à dire merci ! B) Note : J'ai du utiliser NumberFormatException à la place de NumberException ^_^ Citer
Recommended Posts
Rejoignez la conversation
Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.