2012-03-27 8 views
0

Ich habe ein Edittext-Feld, und ich muss eine Art implementieren, so dass wenn ich es berühre, ein Fenster mit 1 bis 9 Nummer angezeigt werden soll und wenn ich die Nummer auswählen Der Wert des Bearbeitungstextes muss mit dieser Nummer eingestellt werden. wie kann ich das bekommen .. ???Aktivieren Touch-Modus für Edittext zur Eingabe von Zahlen

oder wenn ich es EditText Werte berühren muss auf 1 gesetzt werden (wenn zum ersten Mal berührt) Dies ist der Code habe ich versucht:

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

    EditText edit = (EditText) this.findViewById(R.id.editText1); 
    edit.setOnTouchListener(new View.OnTouchListener() { 

     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      // TODO Auto-generated method stub 
      boolean flag = false; 
      switch(event.getAction()) 
      { 
       case MotionEvent.ACTION_DOWN: 
        flag = true; 
        break; 
       case MotionEvent.ACTION_UP: 
        flag = true; 
        break; 

      } 
      return flag; 
      if(flag) 
      { 
       if ((e.getText()+"") == "") 
       { 
        e.setText("1"); 
       } 
       else 
       { 
        if(Integer.parseInt(e.getText())==9) 
          e.setText("1"); 
        else 
         e.setText(Integer.parseInt(e.getText()+"")+1); 
       } 
      } 
     } 
    }); 

} 

aber e in den Code zu finden ist nicht ...

Antwort

0

der einfachste Weg, Zahlen erlauben nur über die Tastatur eingegeben werden, ist das Attribut input auf einem EditText zu verwenden:

<EditText android:id="@+id/size" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:inputType="number" 
     /> 
Verwandte Themen