-4
這裏是我的代碼:如何在android studio中添加一個方法?
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText txtFirstNum = (EditText) findViewById(R.id.txtFirstNum);
final EditText txtSecondNum = (EditText) findViewById(R.id.txtSecondNum);
final TextView txtResult = (TextView) findViewById(R.id.lblResult);
Button btnAdd = (Button) findViewById(R.id.btnAdd);
btnAdd.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
int num1 = Integer.parseInt(txtFirstNum.getText().toString());
int num2 = Integer.parseInt(txtSecondNum.getText().toString());
int result = num1 + num2;
txtResult.setText(result + "");
}
});
Button btnSub = (Button) findViewById(R.id.btnSub);
btnSub.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
int num1 = Integer.parseInt(txtFirstNum.getText().toString());
int num2 = Integer.parseInt(txtSecondNum.getText().toString());
int result = num1 - num2;
txtResult.setText(result + "");
}
});
}
}
什麼,我基本上是想要做的是用我可以打電話,而不是重複相同的代碼行有點像這樣(不工作)的方法:
int num1;
int num2;
btnAdd.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
getNumbers();
int result = num1 + num2;
txtResult.setText(result + "");
}
});
...
private void getNumbers()
{
num1 = Integer.parseInt(txtFirstNum.getText().toString());
num2 = Integer.parseInt(txtSecondNum.getText().toString());
}
,將工作,但我的猜測是,你有點迷茫範圍。在原始代碼中,num1和2是局部變量,它們不能像這樣直接更新,實例或類變量可以是 – Stultuske
方法應該是int doOperation(int num1,int num2,int operationType){switch(operationType) {case ADD:return num1 + num2; case SUB:num1-num2; .....等等}}'...在button標籤中使用'operationType',你可以通過1'OnClickListener' – Selvin