0

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

我有一个 Textview 和两个按钮 +1 和 -1。当您按 +1 时,我的文本视图中应该有1,而 -1 按钮则相反。我找不到我的错误。这是我的代码。

活动.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;
   }

}

}

4

2 回答 2

1

是的,我认为 vikram 代码与您的代码一起工作的问题是,一旦您将您的设置设置为在本地声明的 textview,您并不是指您在 onCreate() 中创建的 textview;

于 2013-07-22T16:22:02.130 回答
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变量,因为它没有任何作用。

于 2013-07-22T16:16:38.863 回答