我正在尝试在列表视图中启动onItemClick的新活动。
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, final View view,
int position, long id) {
Intent intent = new Intent(ItemListActivity.this, ItemDetailActivity.class);
try {
intent.putExtra(MEMORY_ID, result.getJSONObject(position).getInt("id"));
} catch (JSONException e) {
e.printStackTrace();
}
intent.putExtra(LATITUDE, currentLocation.getLatitude());
intent.putExtra(LONGITUDE, currentLocation.getLongitude());
startActivity(intent);
}
});
当它到达startActivity(intent)时,我可以通过调试器看到正确的值在intent中。但是,当我在ItemDetailActivity中执行getIntent()时,该intent没有值。 mMap为空。
访问附加内容的代码是
Intent intent = getIntent();
// Create a new HttpClient and build GET request
HttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://128.61.107.111:56788/memories/view_specific/" +
intent.getStringExtra(ItemListActivity.MEMORY_ID) +
"?latitude=" + intent.getStringExtra(ItemListActivity.LATITUDE) +
"&longitude=" + intent.getStringExtra(ItemListActivity.LONGITUDE));
这里发生了什么?我没有抓住正确的意图吗?我的价值观是如何失去的?
答案 0 :(得分:1)
您正在使用Int和Double类型,而不是String。 尝试使用intent.getIntExtra和intnet.getDoubleExtra,或者只是在调试模式下执行intent.getExtras()并观察其中的值。