嘿,我想创建 BMI 简单的 android 应用程序。我找到了这段代码,但这段代码以 LBS 和英寸计算。但是,我的程序需要在 KG 和 CM 中创建。我已经尝试重新编码。但是,我仍然找不到解决方案。
这是代码。
package com.example.bmicalculator;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.EditText;
import android.widget.Button;
import android.view.View;
public class BMICalculatorActivity extends Activity {
private EditText txtheight;
private EditText txtweight;
private TextView txtresult;
private Button btncalculate;
private double bmi = 0;
private double valueheight = 0;
private double valueweight = 0;
private String resulttext;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
initControls();
/*TextView tv = new TextView(this);
tv.setText("BMI Calculator");
setContentView(tv);*/
}
private void initControls() {
txtheight = (EditText)findViewById(R.id.txtheight);
txtweight = (EditText)findViewById(R.id.txtweight);
txtresult = (TextView)findViewById(R.id.txtresult);
btncalculate = (Button)findViewById(R.id.btncalculate);
//btnreset = (Button)findViewById(R.id.btnreset);
btncalculate.setOnClickListener(new Button.OnClickListener() { public void onClick (View v){ calculate(); }});
//btnreset.setOnClickListener(new Button.OnClickListener() { public void onClick (View v){ reset(); }});
}
private void calculate() {
valueheight =Double.parseDouble(txtheight.getText().toString());
valueweight =Double.parseDouble(txtweight.getText().toString());
bmi = (valueweight / (valueheight * valueheight));
//txttipamount.setText(Double.toString(bmi));
if (bmi >= 30) { /* obese */
resulttext = "Your BMI of " + Double.toString(bmi) + " is OBESE.";
txtresult.setText(resulttext);
} else if (bmi >= 25) {
resulttext = "Your BMI of " + Double.toString(bmi) + " is OVERWEIGHT.";
txtresult.setText(resulttext);
} else if (bmi >= 18.5) {
resulttext = "Your BMI of " + Double.toString(bmi) + " is IDEAL.";
txtresult.setText(resulttext);
} else {
resulttext = "Your BMI of " + Double.toString(bmi) + " is UNDERWEIGHT.";
txtresult.setText(resulttext);
}
}
private void reset()
{
txtresult.setText("Your BMI is unknown.");
txtheight.setText("0");
txtweight.setText("0");
}
}
提前致谢。