根据单击的按钮ANDROID,将EditText值增加或减少2

时间:2012-03-29 06:31:39

标签: android

我找到了很多答案来做近距离的事情,但没有什么能满足我的要求。几天来一直在寻找答案。

我有一个名为textEdit1的TextEdit字段。

我的每一侧都有一个按钮,button1和button10。

TextEdit字段的初始值为0(由我可能添加的字符串设置,以防产生差异)

如果我点击button1,我需要将该值减少2.如果我点击button10,我需要将该值增加2。

这是一种评分应用,其中 - 积分比+积分更好。所以我需要能够做到负值。

这适用于Android,并且它可以向后兼容,所以我在API 3上构建它。我需要它能够在1.5上运行。

以下是我的XML代码。

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/buttonYes" />

    <EditText
        android:id="@+id/editText1"
        android:layout_width="50dp"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="number"
        android:text="@string/valueInitial" >

        </EditText>


    <Button
        android:id="@+id/button10"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/buttonNo" />

基本上,如果有问题的人取得了进展,你点击按钮1的“是”按钮,它会减去2点。如果他们没有取得进展,或者意外按下了“是”按钮,则按下“否”按钮即是buttong10,它会增加点数。

有几个这样的连续按钮,针对不同情况使用不同的点值。完成所有操作后,您点击底部的评分按钮,它会对所有EditText字段进行计算,并显示最终得分。

此外,我不希望任何人能够点击EditText字段并输入值,我也无法找到此信息。只应通过点击这两个按钮之一来更改该值。

好的经过一些帮助后我得到了以下内容,它很接近我确定,但我没有Android或Java的经验,我的经验是在VB.NET中。这是我到目前为止所做的,但是我遇到了很多错误。

public class ScoringActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    setButtonClickListener();
}
public int progress;

    private void setButtonClickListener() {
        button1.setOnClickListener(this);
        button10.setOnClickListener(this); {
            public void onClick(View v) {
    // TODO Auto-generated method stub
                if(v == button1){
                this.total -= 2;
                textEdit1.setText(String.valueOf(this.progress); 
                }
                if(v == button10){
                this.total += 2;
                textEdit1.setText(String.valueOf(this.progress);    
                }

                }

        });



}
}

这不是导入问题,因为我没有收到任何类似的错误。

1 个答案:

答案 0 :(得分:2)

简单的java

保留一个类成员变量,用于跟踪编辑文本中的数字。

如果点击减少

this.total -= 2;
TextEdit1.setText(String.valueOf(this.total));

如果点击增加

this.total += 2;
TextEdit1.setText(String.valueOf(this.total));