J'ai un TextField vide et je voudrai que l'utilisateur ne puisse entrer que des chiffres.
De plus, il faudrait que l'utilisateur appui directement sur les touches numériques de son clavier de téléphone
Version imprimable
J'ai un TextField vide et je voudrai que l'utilisateur ne puisse entrer que des chiffres.
De plus, il faudrait que l'utilisateur appui directement sur les touches numériques de son clavier de téléphone
Dans le layout vous avez plein d'options pour modifier le comportement d'un EditText, particulièrement android:inputType. Per exemple :
Code:
1
2
3
4
5
6
7
8 <EditText android:id="@+id/password" android:hint="@string/password" android:layout_width="fill_parent" android:layout_height="wrap_content" android:password="true" android:inputType="textPassword|number" />
Par exemple, pour ne rentrer que des chiffres (ici 5 maxi), et utiliser le clavier numérique, il faut faire :
Code:
1
2
3
4
5
6
7
8
9
10
11 <EditText android:id="@+id/MonEditText" android:hint="Entrez des chiffres" android:digits="0123456789" android:maxLines="1" android:maxLength="5" android:inputType="phone|number" android:typeface="monospace" android:layout_width="fill_parent" android:layout_height="wrap_content" />
merci aprés je crée une classe java
Code:
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 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } final EditText nameField = (EditText) findViewById(R.id.EditTextPassword); public void sendFeedback(View button) { String name="test"; String name = nameField.getText().toString(); if(isPasswordCorrect(name)) System.out.println("Mot de passe Correct"); else System.out.println("Mot de passe Incorrect"); // Do click handling here } private static boolean isPasswordCorrect(String inputPassword) { if(inputPassword.equals("motdepasse")) return true; else return false; } }
salut j'ai un probléme dont le code quand je saisir le mots de passe(1234) et je clique sur ok il me dis message incorrect
voila le code
Code:
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
58
59
60 package com.example.todo; import android.app.Activity; import android.os.Bundle; import android.view.KeyEvent; import android.view.View; import android.view.View.OnClickListener; import android.view.View.OnKeyListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class main extends Activity implements OnClickListener, OnKeyListener { /** Called when the activity is first created. */ EditText editText; Button ok; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); editText= (EditText)findViewById(R.id.editText); ok= (Button)findViewById(R.id.ok); ok.setOnClickListener(this); editText.setOnClickListener(this); } public void sendFeedback(View button) { String name1 =editText.toString(); if(name1.equals("1234")){ Toast.makeText(this,"Mot de passe correct",Toast.LENGTH_SHORT).show();} else{ Toast.makeText(this,"Mot de passe Incorrect",Toast.LENGTH_SHORT).show();} // Do click handling here } @Override public boolean onKey(View arg0, int arg1, KeyEvent arg2) { // TODO Auto-generated method stub return false; } @Override public void onClick(View v) { sendFeedback(ok); } }
C'est editText.getText().toString() et pas editText.toString pour récupérer le contenu du champ
que vous ne récupérez pas le texte saisie, vous faites que récupérer l'instance de votre objet texte et de la convertir en "String".
Merci d'essayer un minimum d'utiliser le debugueur... :?
merci beaucoup AndroChristophe juste derniére question comment je peut afficher les chiffres en etoiles
voila mon fichier xml
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <EditText android:layout_height="wrap_content" android:layout_width="fill_parent" android:id="@+id/password" android:inputType="textPassword|number"> </EditText> <Button android:layout_height="wrap_content" android:layout_width="fill_parent" android:id="@+id/ok" android:text="Enter"></Button> <ListView android:id="@+id/listviewperso" android:layout_width="fill_parent" android:layout_height="fill_parent" /> <ListView android:layout_height="wrap_content" android:id="@+id/listView1" android:layout_width="fill_parent"></ListView> </LinearLayout>
http://developer.android.com/referen...tView_password
android:password="true" dans les attributs du editText