Android“加1”按钮

时间:2013-07-22 16:01:38

标签: android button

我开始使用Android应用,但我需要一些帮助。

我有一个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;
   }

}

}

2 个答案:

答案 0 :(得分: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,并在按下-1时显示minus,请将switch语句替换为:

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

              textview.setText("1");  

              break;
          case R.id.minus:

              textview.setText("-1"); 

              break;
          default:
              break;
       }

在这种情况下,请删除count变量,因为它没有用处。

答案 1 :(得分:1)

是的,我认为vikram代码可以解决你的代码问题,一旦你将你的设置增加到textview,这是在本地声明你不是指你在onCreate()中创建的textview;