這裏是我使用put地點串代碼:Android的位置字符串問題
public static String locationStringFromLocation(final Location location) {
return String.format("%.3f %.3f", location.getLatitude(), location.getLongitude());
}
和一些其他的設備,不時我得到: -7.2900002123788E-4 7.270000060088933E-4
的位置字符串,例如不-7.290 7.270
。
- 有人對此有所瞭解嗎?
- 如何提高我的代碼?
編輯
更新後的代碼。 這會解決問題嗎?
DecimalFormat decimalFormat = new DecimalFormat("#.###");
if (location != null) {
final String latitude = decimalFormat.format(Float.valueOf(Location.convert(location.getLatitude(), Location.FORMAT_DEGREES)));
final String longitude = decimalFormat.format(Float.valueOf(Location.convert(location.getLongitude(), Location.FORMAT_DEGREES)));
return latitude + " " + longitude;
}
return decimalFormat.format(0.0F) + " " + decimalFormat.format(0.0F);
你的代碼對我來說看起來不錯。你測試了哪些Android版本? – Fildor
@Fildor我瞄準API-17,爲API-7 +打造。奇怪的情況出現在API-10上。 – shkschneider
API-10始終是越野車... SavedState,圖形,現在格式化! – Penn