2011-06-16 159 views
1

我有EditText並使用EditText中的數字作爲我的變量。按鈕更改EditText

我也有兩個按鈕,一個用於增加EditText中的數字,另一個用於減少一個。

有人可以告訴我的代碼,使這成爲可能嗎?

+1

你不應該在這裏要求代碼.. :) – ngesh 2011-06-16 11:11:41

回答

5

使用中的EditText的XML以下行用於設置輸入類型數:

<EditText 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:inputType="number" 
      android:text="200" 
      android:id="@+id/editText1" 
      android:layout_alignParentLeft="true"> 
     </EditText> 

而在源文件中使用下面的代碼被1至減小數字:

final EditText ed=(EditText)findViewById(R.id.editText1); 

     Button b1=(Button)findViewById(R.id.button01); 

     b1.setOnClickListener(new OnClickListener() { 

      public void onClick(View v) { 
       // TODO Auto-generated method stub 

       int a=Integer.parseInt(ed.getText().toString()); 

       int b=a-1; 

       ed.setText(new Integer(b).toString()); 
      } 
     }); 

同樣,在xml中添加一個按鈕以將數字增加1。

+0

感謝傢伙,我知道它不好,簡單地問任何代碼而沒有給出任何自己的解決方案,但我真的不知道如何完成它。 – typie34 2011-06-16 17:25:43

2

你需要創建一個上點擊收聽每個按鈕,做這樣的事情:

final Button button = (Button) findViewById(R.id.button_id); 
     button.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       EditText editText = (EditText)findViewById(R.id.edit_text); 
       int newVal = ... //retrieve the previous val and increment it (or decrement it) 
       editText.setText(newVal, TextView.BufferType.EDITABLE); 
      } 
     }); 
1
button.setOnClickListener(new OnCLickListener(){ 
@Override 
      public void onClick(View arg0) { 
if(arg0.equals(button1)) 
{ 
String s = editText.getText().toString(); 
Integer i = Integer.parseInt(s); 
i=++i; 
s = s.valueOf(i); 
editText.setText(s); 
}  
if(arg0.equals(button2)) 
{ 
//decrement 
}   

} 
}) 
1

只要你必須使用這兩個按鈕的點擊事件,在增加鍵獲取文本edittextbox並將其增加並將其設置在edittextbox中,對於遞減按鈕也是如此,並減小該值。