0

こんにちはすべて私は1つの操作(加算)のみを実行する計算機であるAndroidアプリケーションを持っています2つの数値が解決策であるかどうかにかかわらず、結果は常に3.0です??? これがコードです

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

public class claculator extends Activity {
    /** Called when the activity is first created. */

    EditText nu1,nu2;
    Button add;
    TextView txtv;
    double x,y,z;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        nu1=(EditText)findViewById(R.id.n1);
        nu2=(EditText)findViewById(R.id.n2);
        add=(Button)findViewById(R.id.btn);
        txtv=(TextView)findViewById(R.id.tv);

         x= Double.parseDouble(nu1.getText().toString());
       y= Double.parseDouble(nu2.getText().toString());

       add.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {

            z=x+y;
            txtv.setText(String.valueOf(z));
        }
    });

    }
} 
4

1 に答える 1

0

次の内部でEditText値をフェッチする必要がありますonClick()

add.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View arg0) {
        x= Double.parseDouble(nu1.getText().toString());
        y= Double.parseDouble(nu2.getText().toString());

        z=x+y;
        txtv.setText(String.valueOf(z));
    }
});

onCreate()ユーザーがこれらの値をまだ変更する機会がない場合にこれらの値を取得しようとすると、デフォルト値が取得されます。ユーザーがボタンをクリックしたときに、これらの値をフェッチする必要があります。

于 2012-12-16T19:26:27.140 に答える