2012-03-29 70 views
-3

我发现了很多答案来做关闭事情,但没有什么我正在寻找。一直在寻找几天的答案。增加或减少EditText值2取决于哪个按钮被点击,ANDROID

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

我在它的每一侧还有一个按钮,button1和button10。

的文本编辑域的初始值为0

如果我单击button,我需要通过价值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点。如果他们没有取得进展,或者意外按下了yes按钮,那么你点击了“no”按钮,这是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);  
       } 

       } 

     }); 



} 
} 

这不是一个进口问题,因为我没有得到任何这样的错误。

+0

它的核心逻辑,把一些代码,显示你的努力得到回答 – 2012-03-29 06:37:00

+0

例http://stackoverflow.com/questions/1653617/android-dynamic-created-button-setonclicklistener-doesnt-work – 2012-03-29 06:44:26

回答

2

好简单的java

保持一个类的成员veriable在编辑文本中保持号码的粘性。

如果单击减少

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

如果点击增加

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

Riddhish:我之所以没有发布代码的原因是因为我尝试了很多东西,并且如果他们不工作,一直在删除它们。我不喜欢让代码混乱。 Mayank,这是我正在寻找的东西。我了解变量,以及代码的作用。纠正我,如果我错了,但对于“如果点击减少”,它的对手,将onClickHandler的每个按钮是正确的?关于这个唯一的其他问题是,它在哪里说“valueOf”是我必须用来匹配我的情况,还是实际上是内置的东西? – Michael 2012-03-29 19:18:19

+0

'String.valueOf()'是一个内置的函数,它返回给定的'Integer/Double/Long ....'的String,等于'Integer.toString();'在'OnClickListener'中,你可以检测到哪个按钮是通过比较'buttonId'和'view.getID()'来点击。 – Mayank 2012-03-29 19:45:32

+0

Groovy,谢谢你,正是我在找的东西。 – Michael 2012-03-29 22:29:42

相关问题