Activity之间用 intent.putExtra传值,bundle.getString取值为空null
2016-07-26 16:10
411 查看
在开发时用到了两个Activity传值,在第二个Activity中取值提示为空,百思不得其解后找到了原因,先来看看最开始出问题的代码:
很正常的点击传值跳转:
第二个activity接收:
但是这时候输出报错了
为什么第二个Activity中id为null呢,原来是在第一个Activity中id的类型是int型,但是传值传的是string类型所以在第二个Activity中获取不到id的值,在第一个Activity中把
这样第二个Activity就可以正常获取到id的值了
这个错误是刚入坑Android开发者可能会遇到的错误,当然也包括博主哈哈,希望共同进步,共同学习。
很正常的点击传值跳转:
case R.id.cv_matchdetails_sponor: Intent intent = new Intent(MatchDetailsActivity.this, SponsorActivity.class); intent.putExtra("id", id); intent.putExtra("name", name); Log.e("iddddddddddd", id + name); startActivity(intent); break;
第二个activity接收:
if (intent != null) { Bundle bundle = intent.getExtras(); id = bundle.getString("id"); name = bundle.getString("name"); Log.e("iddddddddddd",id+name); tb_sponsor.setTitle(name); } else { finish(); }
但是这时候输出报错了
为什么第二个Activity中id为null呢,原来是在第一个Activity中id的类型是int型,但是传值传的是string类型所以在第二个Activity中获取不到id的值,在第一个Activity中把
intent.putExtra("id", id);改成
<pre name="code" class="java" style="font-size: 18px;">intent.putExtra("id", Integer.toString(id));
这样第二个Activity就可以正常获取到id的值了
这个错误是刚入坑Android开发者可能会遇到的错误,当然也包括博主哈哈,希望共同进步,共同学习。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories