1

在我的应用程序中,我将一些意图附加信息从一项活动发送到另一项活动。但是一些用户报告说这些数据总是为零 - 即使我可以看到这些值在发送活动中是好的。

这是发送活动的代码:

Intent intent = new Intent();
intent.setClass(waypointListView.this, addWaypointActivity.class);
intent.putExtra("latitude", String.format("%9.6f", globLatitude));
intent.putExtra("longitude", String.format("%9.6f", globLongitude));
startActivityForResult(intent, ACTIVITY_ADD_WAYPOINT);

这就是它在新活动中的读取方式:

Intent myIntent = getIntent();
String latitudeStr = myIntent.getExtras().getString("latitude");

try{
  globLatitude = Float.parseFloat(latitudeStr);
} catch(NumberFormatException nfe) {    
  globLatitude=0f;
}

String longitudeStr = myIntent.getExtras().getString("longitude");

try{
  globLongitude = Float.parseFloat(longitudeStr);
} catch(NumberFormatException nfe) {    
  globLongitude=0f;
}

在我的两台设备上它都可以正常工作,但我有 3 例客户抱怨它不起作用(记录在视频记录中)。

有什么建议么?

4

1 回答 1

0

我尝试更改代码以使用 getFloatExtra() 而不是 getString 并将其解析为浮点数,它解决了问题。我看到这效率更高,但我仍然不明白为什么原始解决方案适用于某些设备但不适用于其他设备。

结案!

于 2012-06-25T19:28:36.630 回答