您的位置:首页 > 移动开发 > Android开发

Android开发时Activity之间传送对象Bundle为null的问题

2017-10-25 15:36 363 查看
两个Activity之间传值,获得Bundle时为null,报错如下java.lang.NullPointerException: Attempt to invoke virtual method 'java.io.Serializable android.os.Bundle.getSerializable(java.lang.String)' on a null object reference代码如下:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(data!=null) {
if (requestCode == 1) {
Intent intent=getIntent();
Bundle bundle = intent.getExtras();
//UserBean
UserBean userBean=(UserBean)bundle.getSerializable("UserBean");
this.tv_username.setText(userBean.getNickName());
this.tv_userType.setText(userBean.getName());
SharedPreferences sharedPreferences = getSharedPreferences("user", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("username",userBean.getName());
editor.putString("nickname",userBean.getNickName());
editor.putString("password", "password");
editor.putString("id", userBean.getId());
editor.putBoolean("isRemember", true);
editor.commit();
}
}
}
问题是Intent 不能用getIntent()的值进行Bundle操作了
Intent intent=getIntent();
Bundle bundle = intent.getExtras();
把代码改为通过data获取Bundle:
Bundle bundle=data.getExtras();

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐