Bonjour,
Lors d'un développement, pour limiter le nombre de widgets, je mets à jour automatiquement un edittext en utilisant TextWatcher.
Cette exemple converti automatiquement une pente exprimée en pourcentage en degrés.
Tous se passe bien sauf si j'efface le contenue de l'edittext avec la touche BackDel de l'émulateur, là, l'application plante.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57 package Angle.toiture; import android.app.Activity; import android.os.Bundle; import android.text.Editable; import android.text.TextWatcher; import android.widget.EditText; public class Angle_ToitureActivity extends Activity implements TextWatcher{ private EditText editText1; private EditText editText2; private Double AngleP; private String AngleD; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); editText1 = (EditText) findViewById(R.id.editText1); editText1.addTextChangedListener(this); } @Override public void afterTextChanged(Editable s) { // TODO Auto-generated method stub AngleP=Double.parseDouble(editText1.getText().toString()); AngleD = Double.toString(Math.atan(AngleP/100)/(Math.PI/180)); ((EditText)findViewById(R.id.editText2)).setText(AngleD); } @Override public void beforeTextChanged(CharSequence s, int start, int count,int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { } }
Avez-vous une idée?
Merci d'avance
Partager