我使用eclipse ADT做的一个android计算器ADT 它工作正常,但是我无法查看整个公式,当我计算这意味着在测试期间当我正在计算我无法查看整个方程x + y = z我只能查看X,然后当我按+我无法在屏幕上看到时,当我点击它时看到了Y,然后我看到了Y答案Z为什么我不能查看整个方程? X + Y = Z这里是我的Java代码无法查看Android计算器的完整公式
package com.zee.sampleCalculator;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import com.zee.sampleCalculator.R;
public class MainActivity extends Activity {
public String str ="";
Character op = 'q';
int i,num,number;
EditText showResult;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
showResult = (EditText)findViewById(R.id.result_id);
}
public void btn1Clicked(View v){
insert(1);
}
public void btn2Clicked(View v){
insert(2);
}
public void btn3Clicked(View v){
insert(3);
}
public void btn4Clicked(View v){
insert(4);
}
public void btn5Clicked(View v){
insert(5);
}
public void btn6Clicked(View v){
insert(6);
}
public void btn7Clicked(View v){
insert(7);
}
public void btn8Clicked(View v){
insert(8);
}
public void btn9Clicked(View v){
insert(9);
}
public void btn0Clicked(View v){
insert(0);
}
public void btnplusClicked(View v){
perform();
op = '+';
}
public void btnminusClicked(View v){
perform();
op = '-';
}
public void btndivideClicked(View v){
perform();
op = '/';
}
public void btnmultiClicked(View v){
perform();
op = '*';
}
public void btnequalClicked(View v){
calculate();
}
public void btnclearClicked(View v){
reset();
}
private void reset() {
// TODO Auto-generated method stub
str ="";
op ='q';
num = 0;
number = 0;
showResult.setText("");
}
private void insert(int j) {
// TODO Auto-generated method stub
str = str+Integer.toString(j);
num = Integer.valueOf(str).intValue();
showResult.setText(str);
}
private void perform() {
// TODO Auto-generated method stub
str = "";
number = num;
}
private void calculate() {
// TODO Auto-generated method stub
if(op == '+')
num = number+num;
else if(op == '-')
num = number-num;
else if(op == '/')
num = number/num;
else if(op == '*')
num = number*num;
showResult.setText(""+num);
}
}
预先感谢
非常感谢我在开始时所做的一切,正如你在第一个代码中所说的那样,但是在第二个代码中(op);你是否打算像这样做 'public void btnplusClicked(View v){ perform(op); op ='+'; }' }因为当我做了一个错误显示哪个是_The方法执行(字符串)类型MainActivity不适用于参数(字符)_和在最后的代码中我得到了一个错误ShowResult.setText结果在最后被标记为错误_局部变量结果可能尚未初始化_ *希望你能帮我解决这些错误。*再次感谢。 –
@ZeeE。我编辑了我的答案,现在,它应该工作。 –
**非常感谢**我会再次检查它:D我知道Java但仍需要学习更多。 –