簡體   English   中英

我在android中制作一個計算器,但是在添加兩個值時出現錯誤

[英]I am making a calculator in android but i am getting error in adding two values

我有2個編輯文本字段,在這里我從用戶那里獲取值,而我有四個按鈕,當用戶給出值時,加,減,除,然后按下按鈕之一,程序將執行我已分配給它的特定任務,它將給在文本視圖中的結果,但我在添加兩個值時出錯。 這是我的努力。

package com.example.calculator;

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

public class MainActivity extends Activity implements OnClickListener {
TextView textView1;
Button button1,sub,mul,divi;
EditText editText1,editText2;
double a,b;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
textView1=(TextView)findViewById(R.id.textView1);
editText1=(EditText)findViewById(R.id.editText1);
editText2=(EditText)findViewById(R.id.editText2);
button1=(Button)findViewById(R.id.button1);
sub=(Button)findViewById(R.id.sub);
mul=(Button)findViewById(R.id.mul);
divi=(Button)findViewById(R.id.divi);

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }

    @Override
    public void onClick(View arg0) {
        // TODO Auto-generated method stub
        a=Double.parseDouble(editText1.getText().toString());
        b=Double.parseDouble(editText1.getText().toString());
        if(arg0.getId()==R.id.button1){
            textView1.setText(""+ a+b);
        }
        else{textView1.setText("not working ");}
        }

}

它是我的應用

第一

您缺少Parenthesis

這里的textView1.setText(""+ a+b); + operator充當串聯

因此,將您的代碼更改為

textView1.setText(""+ (a+b));

PS。 第二:

我想你也忘了注冊onClickListenerbutton1=(Button)findViewById(R.id.button1);

因此,請在onCreate()使用此button1.setOnClickListener(this) onCreate()

試試textView1.setText(""+ (Double)(a+b));

我已經編輯了可以100%工作的代碼。

    package com.example.calculator;

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

public class MainActivity extends Activity implements OnClickListener {
TextView textView1;
Button button1,sub,mul,divi;
EditText editText1,editText2;
double a,b;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
textView1=(TextView)findViewById(R.id.textView1);
editText1=(EditText)findViewById(R.id.editText1);
editText2=(EditText)findViewById(R.id.editText2);
button1=(Button)findViewById(R.id.button1);
sub=(Button)findViewById(R.id.sub);
mul=(Button)findViewById(R.id.mul);
divi=(Button)findViewById(R.id.divi);
button1.setOnClickListener(this);

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }

    @Override
    public void onClick(View arg0) {
        // TODO Auto-generated method stub
        a=Double.parseDouble(editText1.getText().toString());
        b=Double.parseDouble(editText1.getText().toString());
        if(arg0.getId()==R.id.button1){
            textView1.setText(""+(a+b));
        }
        else{textView1.setText("not working ");}
        }

}

android:inputType="number"放入xml文件的Edittext中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM