赞
踩
启动一个有返回值的activity (MapActivity)
Intent intent = new Intent(UpdateDeveicesActivity.this, MapActivity.class);
intent.putExtra("latitude", sensorModel.getLatitutde());
intent.putExtra("longitude", sensorModel.getLongtitude());
startActivityForResult(intent, Contacts.INDEX_ONE);
MapActivity处理接收的返回值
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_map);
ButterKnife.bind(this);
String lat, lon;
intent = this.getIntent();
lat = intent.getStringExtra("latitude");
lon = intent.getStringExtra("longitude");
Log.e("得到前面传递的数据", lat);
Log.e("得到前面传递的数据", lon);
}
运行代码,发现程序崩溃?了,提示lat参数为null,导致程序崩溃,
后面突然发现,我传递的一个Double类型的参数,获取的时候是一个String,所以导致activity接收不到数据
后来更改了lat,lon的类型,发现就能够正常接收了,特此编写,以防下次再犯
更改成功之后的代码
//更改类型从String更改为Double Double lat, lon; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_map); ButterKnife.bind(this); intent = this.getIntent(); lat = intent.getDoubleExtra("latitude", 0); lon = intent.getDoubleExtra("longitude", 0); Log.e("得到前面传递的数据", "" + lat); Log.e("得到前面传递的数据", "" + lon); }
LOG日志截图
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。