# AN25 課題No.04-1 ###### tags: `課題` ```xml= //activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/text1" /> <EditText android:id="@+id/edit_height" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="30dp" android:inputType="numberDecimal" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/text2" /> <EditText android:id="@+id/edit_weight" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="30dp" android:inputType="numberDecimal" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/text4" /> <EditText android:id="@+id/edit_age" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="30dp" android:inputType="numberDecimal" /> <Button android:id="@+id/button_calc" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/text3" android:onClick="buttonMethod" /> <TableRow android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="right" /> </LinearLayout> ``` ```java= //Mainactivity.java package nhs00650.hal.ac.mybmi; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.content.Intent; import android.view.View; import android.widget.TextView; import android.widget.EditText; public class MainActivity extends AppCompatActivity { private EditText heightEditText; private EditText weightEditText; private EditText ageEditText; float heightint; float weightint; float bmiint; String bmistr; float waweight; float rweight; String rweightStr; int age; float kaupfloat; String kaupString; float roherefloat; String rohereStr; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); heightEditText = (EditText)findViewById(R.id.edit_height); weightEditText = (EditText)findViewById(R.id.edit_weight); ageEditText = (EditText)findViewById(R.id.edit_age); } public void buttonMethod(View btn_calc) { heightint = Float.parseFloat(heightEditText.getText().toString()); weightint = Float.parseFloat(weightEditText.getText().toString()); age = Integer.parseInt(ageEditText.getText().toString()); if(age <= 5){ kaupMethod(); Intent result_act = new Intent(MainActivity.this, Result.class); result_act.putExtra("KAUP", kaupfloat); result_act.putExtra("AGE", age); startActivity(result_act); }else if(age <=15){ rohereMethod(); Intent result_act = new Intent(MainActivity.this, Result.class); result_act.putExtra("ROHERE", roherefloat); result_act.putExtra("AGE", age); startActivity(result_act); }else{ bmiMethod(); Intent result_act = new Intent(MainActivity.this, Result.class); result_act.putExtra("BMI", bmiint); result_act.putExtra("GOODWEIGHT", rweight); result_act.putExtra("AGE", age); startActivity(result_act); } } public void kaupMethod(){ heightint = heightint / 100; float heightintdub = heightint * heightint; kaupfloat = weightint / heightintdub; kaupString = String.format("%.5f", kaupfloat); } public void rohereMethod(){ heightint = heightint / 100; float heightinttri = heightint * heightint * heightint; roherefloat = weightint / heightinttri * 10; rohereStr = String.format("%.5f", roherefloat); } public void bmiMethod() { heightint = heightint / 100; float heightintdub = heightint * heightint; bmiint = weightint / heightintdub; bmistr = String.format("%.5f",bmiint); waweight = heightint * heightint * 22; rweight = waweight - weightint; rweightStr = String.format("%.5f",rweight); } } ``` ```xml= //result.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center" > <TextView android:id="@+id/result_index" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="30dp" android:textSize="30sp" android:textColor="#0000ff" /> <TextView android:id="@+id/result_value" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="30dp" android:textSize="30sp" android:textColor="#ff0000" /> <TextView android:id="@+id/result_judge" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="30dp" android:textSize="30sp" android:textColor="#ff0000" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="30dip" android:text="@string/good_msg" /> <TextView android:id="@+id/good_weight" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="30dp" android:textSize="30sp" android:textColor="#ff0000" /> <Button android:text="@string/btn_reset" android:id="@+id/button_reset" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="buttonMethod" /> <TableRow android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="right" /> </LinearLayout> ``` ```java= //result.java package nhs00650.hal.ac.mybmi; import android.os.Bundle; import android.view.View; import android.widget.EditText; import android.widget.TextView; import android.content.Intent; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity; import org.w3c.dom.Text; public class Result extends AppCompatActivity { private TextView resultTextView; private TextView judgeTextView; private TextView goodTextView; private TextView indexTextView; float bmiint; String bmistr; float kaupfloat; String kaupStr; int age; float roherefloat; String rohereStr; float goodint; String goodStr; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.result); resultTextView = (TextView)findViewById(R.id.result_value); judgeTextView = (TextView)findViewById(R.id.result_judge); goodTextView = (TextView)findViewById(R.id.good_weight); indexTextView = (TextView)findViewById(R.id.result_index); Bundle extras = getIntent().getExtras(); if(extras != null){ age = extras.getInt("AGE"); bmiint = extras.getFloat("BMI"); goodint = extras.getFloat("GOODWEIGHT"); kaupfloat = extras.getFloat("KAUP"); roherefloat = extras.getFloat("ROHERE"); if(age <= 5){ kpMethod(); }else if(age <= 15){ rohMethod(); }else{ peroperoMethod(); } } } public void kpMethod(){ indexTextView.setText(R.string.result_msg2); if(age < 1){ if (kaupfloat < 16){ judgeTextView.setText(R.string.result_judge_0); }else if(kaupfloat < 18){ judgeTextView.setText(R.string.result_judge_1); }else { judgeTextView.setText(R.string.result_judge_2); } }else if(age < 2){ if (kaupfloat < 15.5){ judgeTextView.setText(R.string.result_judge_0); }else if(kaupfloat < 17.5){ judgeTextView.setText(R.string.result_judge_1); }else { judgeTextView.setText(R.string.result_judge_2); } }else if(age < 3){ if (kaupfloat < 15){ judgeTextView.setText(R.string.result_judge_0); }else if(kaupfloat < 17){ judgeTextView.setText(R.string.result_judge_1); }else { judgeTextView.setText(R.string.result_judge_2); } }else{ if (kaupfloat < 14.5){ judgeTextView.setText(R.string.result_judge_0); }else if(kaupfloat < 16.5){ judgeTextView.setText(R.string.result_judge_1); }else { judgeTextView.setText(R.string.result_judge_2); } } kaupStr = String.format("%.5f",kaupfloat); resultTextView.setText(kaupStr); } public void rohMethod(){ indexTextView.setText(R.string.result_msg3); if (roherefloat < 115){ judgeTextView.setText(R.string.result_judge_0); }else if(roherefloat < 145){ judgeTextView.setText(R.string.result_judge_1); }else { judgeTextView.setText(R.string.result_judge_2); } rohereStr = String.format("%.5f",roherefloat); resultTextView.setText(rohereStr); } public void peroperoMethod() { indexTextView.setText(R.string.result_msg); if(bmiint < 18.5){ judgeTextView.setText(R.string.result_judge_0); }else if(bmiint < 25.0) { judgeTextView.setText(R.string.result_judge_1); }else{ judgeTextView.setText(R.string.result_judge_2); } bmistr = String.format("%.5f",bmiint); resultTextView.setText(bmistr); goodStr = String.format("%.5f",goodint); goodTextView.setText(goodStr); } public void buttonMethod(View btn_reset){ Intent reset_act = new Intent(Result.this, MainActivity.class); startActivity(reset_act); } } ``` ```xml= //strings.xml <resources> <string name="app_name">MyBMI</string> <string name="sub_name">Result</string> <string name="action_settings">MyBMI</string> <string name="text1">身長を入力してください(cm)</string> <string name="text2">体重を入力してください(kg)</string> <string name="text3">BMI値を計算</string> <string name="text4">年齢を入力してください</string> <string name="result_judge_0">やせています</string> <string name="result_judge_1">標準です</string> <string name="result_judge_2">太っています</string> <string name="result_msg">あなたの指標はBMI指標。BMI値は...</string> <string name="result_msg2">あなたの指標はKaup指標。Kaup値は...</string> <string name="result_msg3">あなたの指標はRohere指標。Rohere値は...</string> <string name="good_msg">標準体重まで</string> <string name="btn_reset">リセット</string> </resources> ``` AndroidManifest.xmlは変更なし ## 雑談 (0→やまぴ 1→みや 2→やすい 3→りょうくん 4→アミカ 5→やの) --- <span style="color: #ff3333">aaa</span> <span style="text-decoration: underline">aaa</span>