2013-07-22 60 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;