重构Refactor的小例子

发布时间:2020-07-23 20:37:09 作者:HUHU19
来源:网络 阅读:311

package com.example.ex_templete;


import java.text.DecimalFormat;


import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.EditText;

import android.widget.TextView;


import com.example.ex_templete.R;


public class Bmi extends Activity {

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);


initUI();


}


private void initUI() {

// Listen for button clicks

Button button = (Button) findViewById(R.id.submit);

button.setOnClickListener(calcBMI);

fieldheight = (EditText) findViewById(R.id.height);

fieldweight = (EditText) findViewById(R.id.weight);

result = (TextView) findViewById(R.id.result);

fieldsuggest = (TextView) findViewById(R.id.suggest);

}


private OnClickListener calcBMI = new OnClickListener() {

@Override

public void onClick(View v) {

DecimalFormat nf = new DecimalFormat("0.00");

double height = Double

.parseDouble(fieldheight.getText().toString()) / 100;

double weight = Double

.parseDouble(fieldweight.getText().toString());

double BMI = weight / (height * height);


result.setText("Your BMI is " + nf.format(BMI));


// Give health advice

if (BMI > 25) {

fieldsuggest.setText("太肥啦");

} else if (BMI < 20) {

fieldsuggest.setText("很骨感");

} else {

fieldsuggest.setText("身材不错");

}

}

};

private EditText fieldheight;

private EditText fieldweight;

private TextView result;

private TextView fieldsuggest;

}



xml中只需要两个editText,两个textview,一个按钮即可

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:paddingBottom="@dimen/activity_vertical_margin"

    android:paddingLeft="@dimen/activity_horizontal_margin"

    android:paddingRight="@dimen/activity_horizontal_margin"

    android:paddingTop="@dimen/activity_vertical_margin"

    tools:context="com.example.ex_templete.MainActivity" >


    <Button

        android:id="@+id/submit"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentBottom="true"

        android:layout_centerHorizontal="true"

        android:layout_marginBottom="134dp"

        android:text="提交" />


    <EditText

        android:id="@+id/height"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentLeft="true"

        android:layout_alignParentTop="true"

        android:ems="10" />


    <EditText

        android:id="@+id/weight"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignLeft="@+id/height"

        android:layout_below="@+id/height"

        android:layout_marginTop="28dp"

        android:ems="10" >


        <requestFocus />

    </EditText>


    <TextView

        android:id="@+id/result"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignLeft="@+id/weight"

        android:layout_below="@+id/weight"

        android:layout_marginTop="30dp"

        android:text="Large Text"

        android:textAppearance="?android:attr/textAppearanceLarge" />


    <TextView

        android:id="@+id/suggest"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignLeft="@+id/result"

        android:layout_below="@+id/result"

        android:layout_marginTop="25dp"

        android:text="Large Text"

        android:textAppearance="?android:attr/textAppearanceLarge" />


</RelativeLayout>


推荐阅读:
  1. python列表函数小例子
  2. Python: 装饰器的小例子

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

重构refactor的小例子 factor ct

上一篇:Elasticsearch使用优化之拙见

下一篇:C 使用VC++建C项目

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》