2013-07-22 54 views
0

我開始使用Android應用程序,但我需要一些幫助。Android「plus 1」按鈕

我有一個Textview和兩個按鈕+1和-1。當你按+1時,我的文本視圖中應該有1,而與-1按鈕相反。我找不到我的錯誤。 這是我的代碼。

Activity.java

package tbj.android.basketballstatistik; 


public class MainActivity extends Activity implements OnClickListener { 

    TextView toPtGoalField; 
    Button plus; 
    Button minus; 
    String oper = ""; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 


    textview= (TextView) findViewById(R.id.textview); 
      plus= (Button) findViewById(R.id.plus); 
      minus= (Button) findViewById(R.id.minus); 

      plus.setOnClickListener(this); 
    minusinus.setOnClickListener(this); 

public void onClick(View v) { 
    float textview= 0; 



    textview= Float.parseFloat(this.textview.getText().toString()); 



    switch (v.getId()) { 
    case R.id.plus: 

     oper = "+"; 
     textview= 1+textview; 
     textview.setText(1+ textview); 


     break; 
    case R.id.minus: 
     oper = "-"; 
     textview= textview- 1; 
     break; 

    default: 
     break; 
    } 



    } 
} 

編輯 得到它與你的,如果下面的代碼解決您的問題,工作與此代碼

public void onClick(View v) { 

    switch (v.getId()) { 
     case R.id.plus: 
      if (count == 0 || count == -1) { 
       count++; 
       textview.setText("" + count); 
      } 
      break; 
     case R.id.minus: 
      if (count == 0 || count == 1) {     
       count--; 
       textview.setText("" + count); 
      } 
      break; 
     default: 
      break; 
    } 

} 

}

+0

你會得到什麼樣的錯誤,如果有的話,什麼顯示在TextView而不是1或-1?此外,你到目前爲止已經嘗試解決你的問題? –

回答

1

幫助請參見:

package tbj.android.basketballstatistik; 

public class MainActivity extends Activity implements OnClickListener { 

TextView toPtGoalField; 
Button plus; 
Button minus; 
String oper = ""; 
int counter; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     textview= (TextView) findViewById(R.id.textview); 
     plus= (Button) findViewById(R.id.plus); 
     minus= (Button) findViewById(R.id.minus); 

     textview.setText("0"); 
     count = 0; 

     plus.setOnClickListener(this); 
     minusinus.setOnClickListener(this); 
    } 

    @Override 
    public void onClick(View v) { 

     switch (v.getId()) { 
      case R.id.plus: 
       if (count == 0 || count == -1) { 
        count++; 
        textview.setText("" + count); 
       } 
       break; 
      case R.id.minus: 
       if (count == 0 || count == 1) {     
        count--; 
        textview.setText("" + count); 
       } 
       break; 
      default: 
       break; 
     } 

    } 

} 

上面的代碼會以增量更改textview的狀態。例如,如果當前狀態爲1,則單擊minus將設置textview值爲0。另一次點擊minus將其值設置爲-1。後續點擊minus將被忽略。如果你想在文本框中顯示1當按下plus,當按下minus-1,更換開關語句:

switch (v.getId()) { 
      case R.id.plus: 

       textview.setText("1"); 

       break; 
      case R.id.minus: 

       textview.setText("-1"); 

       break; 
      default: 
       break; 
     } 

在這種情況下,擺脫了count可變的,因爲它沒有任何意義。

+0

你可以得到這段代碼與分工 – Thor1401

+0

@ Thor1401一起工作你能舉一個例子說明你的意思嗎? – Vikram

+0

是的。 Fx是加上textView與1.然後除以2. PS。感謝您的快速回答 – Thor1401

1

是的,我認爲vikram代碼與你的代碼一起工作的問題是你已經增加了你的設置爲textview,這是在本地聲明的u不是指你在onCreate()中創建的textview;