![](/img/trans.png)
[英]I am new to android development. I am making my first app but I am getting an error:
[英]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。 第二:
我想你也忘了注冊onClickListener
到button1=(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.