返回列表 發帖

BMICalc

  1. <RadioGroup
  2.         android:id="@+id/sexSel"
  3.         android:layout_width="fill_parent"
  4.         android:layout_height="wrap_content"
  5.         android:orientation="vertical">
  6.         <RadioButton
  7.             android:id="@+id/selMale"
  8.             android:text="@string/male_lbl" />
  9.         <RadioButton
  10.             android:id="@+id/selFemale"
  11.             android:text="@string/female_lbl" />
  12. </RadioGroup>
複製代碼

  1. package ray.work.bmicalc;

  2. import android.os.Bundle;
  3. import android.app.Activity;
  4. import android.view.Menu;
  5. import android.view.View;
  6. import android.view.View.OnClickListener;
  7. import android.widget.Button;

  8. public class MainActivity extends Activity implements OnClickListener{

  9.     @Override
  10.     public void onCreate(Bundle savedInstanceState) {
  11.         super.onCreate(savedInstanceState);
  12.         setContentView(R.layout.activity_main);
  13.         Button btn = (Button)findViewById(R.id.buttonCalc);
  14.         //View btn = findViewById(R.id.buttonCalc);
  15.         btn.setOnClickListener(this);
  16.     }

  17.     @Override
  18.     public boolean onCreateOptionsMenu(Menu menu) {
  19.         getMenuInflater().inflate(R.menu.activity_main, menu);
  20.         return true;
  21.     }

  22.         public void onClick(View v) {
  23.                 // TODO Auto-generated method stub
  24.                
  25.         }
  26. }
複製代碼

TOP

  1. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2.     xmlns:tools="http://schemas.android.com/tools"
  3.     android:layout_width="match_parent"
  4.     android:layout_height="match_parent"
  5.     android:orientation="vertical" >

  6.     <TextView
  7.         android:layout_width="fill_parent"
  8.         android:layout_height="wrap_content"
  9.         android:text="@string/height_lbl" />
  10.     <EditText
  11.         android:id="@+id/heightText"
  12.         android:layout_width="match_parent"
  13.         android:layout_height="wrap_content"
  14.         android:ems="10"
  15.         android:inputType="number" >

  16.         <requestFocus />
  17.     </EditText>
  18.    
  19.     <TextView
  20.         android:layout_width="fill_parent"
  21.         android:layout_height="wrap_content"
  22.         android:layout_centerHorizontal="true"
  23.         android:layout_centerVertical="true"
  24.         android:text="@string/weight_lbl" />

  25.     <EditText
  26.         android:id="@+id/weightText"
  27.         android:layout_width="match_parent"
  28.         android:layout_height="wrap_content"
  29.         android:ems="10"
  30.         android:inputType="number" />

  31.     <TextView
  32.         android:layout_width="fill_parent"
  33.         android:layout_height="wrap_content"
  34.         android:layout_centerHorizontal="true"
  35.         android:layout_centerVertical="true"
  36.         android:text="@string/sex_lbl" />
  37.    
  38.     <RadioGroup
  39.         android:id="@+id/sexSel"
  40.         android:layout_width="fill_parent"
  41.         android:layout_height="wrap_content"
  42.         android:orientation="vertical"
  43.         android:checkedButton="@+id/selMale">
  44.         <RadioButton
  45.             android:id="@+id/selMale"
  46.             android:text="@string/male_lbl" />
  47.         <RadioButton
  48.             android:id="@+id/selFemale"
  49.             android:text="@string/female_lbl" />
  50.     </RadioGroup>

  51.     <Button
  52.         android:id="@+id/buttonCalc"
  53.         android:layout_width="fill_parent"
  54.         android:layout_height="wrap_content"
  55.         android:text="@string/calc_lbl" />

  56.     <TextView
  57.         android:id="@+id/suggestionStr"
  58.         android:layout_width="fill_parent"
  59.         android:layout_height="wrap_content"
  60.         android:text="" />

  61.     <TextView
  62.         android:id="@+id/textView1"
  63.         android:layout_width="wrap_content"
  64.         android:layout_height="wrap_content"
  65.         android:text="Large Text"
  66.         android:textAppearance="?android:attr/textAppearanceLarge" />

  67. </LinearLayout>
複製代碼

TOP

  1. <resources>

  2.     <string name="app_name">BMICalc</string>
  3.     <string name="height_lbl">請輸入你的身高:</string>
  4.     <string name="weight_lbl">請輸入你的體重:</string>
  5.     <string name="sex_lbl">請選擇你的性別:</string>
  6.     <string name="male_lbl">男生</string>
  7.     <string name="female_lbl">女生</string>
  8.     <string name="calc_lbl">計算!!</string>
  9.     <string name="menu_settings">Settings</string>
  10.     <string name="title_activity_main">MainActivity</string>

  11. </resources>
複製代碼

TOP

  1. package ray.work.bmicalc;

  2. import android.os.Bundle;
  3. import android.app.Activity;
  4. import android.view.Menu;
  5. import android.view.View;
  6. import android.view.View.OnClickListener;
  7. import android.widget.Button;
  8. import android.widget.EditText;
  9. import android.widget.RadioButton;
  10. import android.widget.TextView;
  11. import android.widget.Toast;

  12. public class MainActivity extends Activity implements OnClickListener{

  13.     @Override
  14.     public void onCreate(Bundle savedInstanceState) {
  15.         super.onCreate(savedInstanceState);
  16.         setContentView(R.layout.activity_main);
  17.         //Button btn = (Button)findViewById(R.id.buttonCalc);
  18.         //View btn = findViewById(R.id.buttonCalc);
  19.         //btn.setOnClickListener(this);
  20.         //btn = (Button)findViewById(R.id.buttonSugg);
  21.         //btn.setOnClickListener(this);
  22.         findViewById(R.id.buttonCalc).setOnClickListener(this);
  23.         findViewById(R.id.buttonSugg).setOnClickListener(this);
  24.     }

  25.     @Override
  26.     public boolean onCreateOptionsMenu(Menu menu) {
  27.         getMenuInflater().inflate(R.menu.activity_main, menu);
  28.         return true;
  29.     }

  30.         public void onClick(View v)
  31.         {
  32.                 // TODO Auto-generated method stub
  33.                 //Toast.makeText(this,"hello",Toast.LENGTH_SHORT).show();
  34.                 try
  35.                 {
  36.                         float h = Float.parseFloat(((EditText)this.findViewById(R.id.heightText)).getText().toString());
  37.                         float w = Float.parseFloat(((EditText)this.findViewById(R.id.weightText)).getText().toString());
  38.                         boolean s = ((RadioButton)this.findViewById(R.id.selMale)).isChecked();
  39.                         BMIManager myBMI = new BMIManager(h,w,s);
  40.                         if(v.getId() == R.id.buttonCalc)
  41.                         {
  42.                                 ((TextView)this.findViewById(R.id.suggestionStr)).setText("BMI="+myBMI.calculateBMI());
  43.                         }
  44.                         if(v.getId() == R.id.buttonSugg)
  45.                         {
  46.                                 ((TextView)this.findViewById(R.id.suggestionStr)).setText(myBMI.suggestion());
  47.                         }
  48.                 }
  49.                 catch(Exception e)
  50.                 {
  51.                         Toast.makeText(this,this.getResources().getString(R.string.errInput),Toast.LENGTH_SHORT).show();
  52.                 }
  53.         }
  54. }
複製代碼

TOP

  1. String suggestion(float mBMI)
  2.         {          
  3.                    String mSuggestion = "";
  4.                    if(mBMI >= 35)
  5.                    {
  6.                            if(msgProvider != null)
  7.                                    mSuggestion = msgProvider.getResources().getString(R.string.suggMale3);
  8.                            else
  9.                                    mSuggestion = "這麼肥!會不會太扯了你~";
  10.                    }
  11.                    else if(mBMI >= 30 && mBMI <35)
  12.                    {
  13.                            if(msgProvider != null)
  14.                                    mSuggestion = msgProvider.getResources().getString(R.string.suggMale2);
  15.                            else
  16.                                    mSuggestion = "再不減肥我怕你坐飛機要買2張票了";
  17.                    }
  18.                    else if(mBMI >= 27 && mBMI <30)
  19.                    {
  20.                            if(msgProvider != null)
  21.                                    mSuggestion = msgProvider.getResources().getString(R.string.suggMale1);
  22.                            else
  23.                                    mSuggestion = "少吃點吧!胖子!";
  24.                    }
  25.                    else if(mBMI >= 24 && mBMI <27)
  26.                    {
  27.                            if(msgProvider != null)
  28.                                    mSuggestion = msgProvider.getResources().getString(R.string.sugg3);
  29.                            else
  30.                                    mSuggestion = "過重";
  31.                    }
  32.                    else if(mBMI >= 18.5 && mBMI <24)
  33.                    {
  34.                            if(msgProvider != null)
  35.                                    mSuggestion = msgProvider.getResources().getString(R.string.sugg2);
  36.                            else
  37.                                    mSuggestion = "標準";
  38.                    }
  39.                    else if(mBMI < 18.5)
  40.                    {
  41.                            if(msgProvider != null)
  42.                                    mSuggestion = msgProvider.getResources().getString(R.string.sugg1);
  43.                            else
  44.                                    mSuggestion = "過輕";
  45.                    }
  46.                    return mSuggestion;
  47.         }
複製代碼

TOP

返回列表