內容跟 Gasolin 書的 BMI 計數器一樣,由 Activity1傳送資訊到Activity2裡運算並展示結果。
這題碰到的問題是我熊熊忘記 startActivityForResult 的建構參數 intent 以前我是怎麼設定的。
startActivityForResult(new Intent(this, targetActivity.class).putExtras(bundle), requestCode);這是之前寫專題用的,一行就可以把問題處理好。
除此之外沒有什麼程式問題,倒是題目設定要仔細研究,比方 sex 題目設定為 String,我沒看就直覺地用了 boolean 後來要修改花了比較多時間。
還有第二個 Activity 中有規定取得的 BMI 值要先 format 等等麻煩的手續,如下
// BMI值格式化 private String format(double num) { return this.getResources().getString(R.string.report_result) + new DecimalFormat("##.00").format(num); } // 取得BMI值 private String getBMI(double height, double weight) { return format(weight / (height * height)); }最後別忘了記取之前的教訓,加減乘除該括號的地方要括,不然算出來的浮點數會有誤差。
沒有留言:
張貼留言