2位数的计算不会显示答案

时间:2011-05-14 02:16:33

标签: android

我正在尝试做一个简单的2位数乘法屏幕,我无法让它真正显示答案。我知道它可能是一些小而愚蠢的东西。而且由于我对EditText / TextView的使用感到困惑,如果它与那些东西有关,我也不会感到惊讶。以下是我到目前为止的情况:

import android.widget.EditText;
import android.widget.TextView;
import android.widget.Button;
import android.os.Bundle;
import android.view.View;

public class Multiply extends Index

{

    private EditText amount1;
    private EditText amount2;
    private TextView answer;
    private Button calculate;
    private double x=0;
    private double y=0;
    private double z=0;
/** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.calc);
        initControls();
    }

    public void initControls()
    {
          amount1=(EditText)findViewById(R.id.amount1);
          amount2=(EditText)findViewById(R.id.amount2);
          answer=(TextView)findViewById(R.id.answer);
          calculate=(Button)findViewById(R.id.calculate);
          calculate.setOnClickListener(new Button.OnClickListener()
          {
              public void onClick(View  v) 
              { 
                  calculate();
              }
          }
          );
     }
     private void calculate()
     {
          x=Double.parseDouble(amount1.getText().toString());
          y=Double.parseDouble(amount2.getText().toString());
          z= x*y;
          answer.setText(Double.toString(z));

     }
} 

伴随此XML文件的“肉”如下所示:

   <EditText 
        android:id="@+id/amount1" 
        android:layout_height="wrap_content" 
        android:layout_width="50dip">
    </EditText>

    <EditText 
        android:id="@+id/amount2" 
        android:layout_height="wrap_content" 
        android:layout_width="50dip">
    </EditText>

    <Button 
        android:id="@+id/calculate"
        android:text="CALCULATE" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content">
    </Button>

    <TextView 
        android:id="@+id/answer"
        android:layout_height="wrap_content" 
        android:layout_width="50dip">
    </TextView>

1 个答案:

答案 0 :(得分:0)

您的代码完好无损且工作正常

只需将扩展索引更改为扩展活动

package com.test;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class Multiply extends Activity

{

private EditText amount1;
private EditText amount2;
private TextView answer;
private Button calculate;
private double x=0;
private double y=0;
private double z=0;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    initControls();
}

public void initControls()
{
      amount1=(EditText)findViewById(R.id.amount1);
      amount2=(EditText)findViewById(R.id.amount2);
      answer=(TextView)findViewById(R.id.answer);
      calculate=(Button)findViewById(R.id.calculate);
      calculate.setOnClickListener(new Button.OnClickListener()
      {
          public void onClick(View  v) 
          { 
              calculate();
          }
      }
      );
 }
 private void calculate()
 {
      x=Double.parseDouble(amount1.getText().toString());
      y=Double.parseDouble(amount2.getText().toString());
      z= x*y;
      answer.setText(Double.toString(z));

 }
}