使用Android Studio,你能指出错误吗?我无法分析为什么我不得不面对这个错误: 只有java的基本背景,我是如何创建计算方法的。
{{1}}
答案 0 :(得分:1)
Button add;
Button sub;
Button times;
Button div;
EditText num1;
EditText num2;
TextView result;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button add=(Button) findViewById(R.id.add);
sub=(Button) findViewById(R.id.sub);
times=(Button) findViewById(R.id.times);
div=(Button) findViewById(R.id.div);
num1=(EditText) findViewById(R.id.num1);
num2=(EditText) findViewById(R.id.num2);
result=(TextView) findViewById(R.id.result);
add.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v){
calculate('+');
}
});
sub.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v){
calculate('-');
}
});
times.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v){
calculate('*');
}
});
div.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v){
calculate('/');
}
});
}
答案 1 :(得分:0)
初始化onCreate()方法内的所有按钮和edittext。您可以将按钮,edittext任何组件声明为全局但不要将它们初始化为全局。所以这样做:
Button add;
Button sub;
Button times;
Button div;
EditText num1;
EditText num2;
TextView result;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
add=(Button) findViewById(R.id.add);
sub=(Button) findViewById(R.id.sub);
times=(Button) findViewById(R.id.times);
div=(Button) findViewById(R.id.div);
num1=(EditText) findViewById(R.id.num1);
num2=(EditText) findViewById(R.id.num2);
result=(TextView) findViewById(R.id.result);
.
.
.
//your button listener code
}