您的位置:首页 > 移动开发 > Android开发

深入浅出Android:重构程序(BMI)

2012-11-29 16:07 344 查看
1、MainActivity.java

package example.bmi;

import java.text.DecimalFormat;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

findViews();
setListensers();
}
private Button button_calc;
private EditText field_height;
private EditText field_weight;
private TextView view_result;
private TextView view_suggest;
private void findViews()
{
button_calc=(Button)findViewById(R.id.submit);
field_height=(EditText)findViewById(R.id.height);
field_weight=(EditText)findViewById(R.id.weight);
view_result=(TextView)findViewById(R.id.result);
view_suggest=(TextView)findViewById(R.id.suggest);
}
private void setListensers()
{
button_calc.setOnClickListener(calcBMI);
}
private Button.OnClickListener calcBMI=new Button.OnClickListener()
{
public void onClick(View v)
{
DecimalFormat nf=new DecimalFormat("0.00");
double height=Double.parseDouble(field_height.getText().toString())/100;
double weight=Double.parseDouble(field_weight.getText().toString());
double BMI=weight/(height*height);
view_result.setText(getText(R.string.bmi_result)+nf.format(BMI));
//give health advice
if(BMI>25)
{
view_suggest.setText(R.string.advice_heavy);
}
else if(BMI<20)
{
view_suggest.setText(R.string.advice_light);
}
else
{
view_suggest.setText(R.string.advice_average);
}
}
};

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}

}


2、显示结果

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: