2012-03-27 19 views
0

私はedittextフィールドを持っています。私がタッチするとウィンドウが1〜9の数字で表示されるような方法を実装する必要があります。編集テキストの値はこの番号で設定する必要があります。どのように私はこれを得ることができます.. ???edittextのタッチモードを有効にして数字を入力する

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); 
       } 
      } 
     } 
    }); 

} 

コード内部の電子が見つからなかったけど...

:私はそれに触れるとき

がまたはのEditTextの値が(最初に触れた)1に設定する必要がありますこれは私が試したコードです

答えて

0

数字だけをキーボードから入力できるようにする最も簡単な方法は、EditTextでinputType属性を使用することです:

<EditText android:id="@+id/size" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:inputType="number" 
     /> 
関連する問題