【发布时间】:2017-11-27 20:12:25
【问题描述】:
我是 Android Studio 的新手,正在研究这个计算器。下图显示了可能的两个数字相加:
当我单击“第一个数字”行时,我可以选择的所有数字都会弹出。我可以计算两个整数,例如 4 + 6,但不能计算小数,例如 3.5 + 2.6。当我点击小数点时没有任何反应(。)我也不能使用(,)或(-)。
这是应用程序此页面上的代码:
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class AdditionPage extends AppCompatActivity implements View.OnClickListener {
private Button btnAdd;
private TextView AnswTxt;
private EditText FirstNumber, SecondNumber;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_additionssida);
init();
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
}
private void init() {
btnAdd = (Button)findViewById(R.id.btnAdd);
FirstNumber = (EditText)findViewById(R.id.SubTal1);
SecondNumber = (EditText) findViewById(R.id.SecondNumber);
AnswTxt = (TextView)findViewById(R.id.AnswTxt);
btnAdd.setOnClickListener(this);
}
@Override
public void onClick(View v) {
String num1 = FirstNumber.getText().toString();
String num2 = SecondNumber.getText().toString();
switch (v.getId()){
case R.id.btnAdd:
float addition = Float.parseFloat(num1) + Float.parseFloat(num2);
AnswTxt.setText(String.valueOf(addition));
break;
}
}
}
【问题讨论】:
-
如果单击小数点后没有任何反应,您可能需要使用 EditText 查看布局的 xml 以了解
android:inputType是什么 -
双数 = Double.parseDouble(FirstNumber.getText().trim());