Andriod 中两个Activity之间传值的几种思路
来源:互联网 发布:德国做律师 知乎 编辑:程序博客网 时间:2024/06/05 17:03
想必做过Andriod开发的人都遇到这样的问题,就是在两个activity直接传值。下面话不多说直接介绍思路。
思路一:;利用Bundle传值
基本过程就是把数据先放到Bundle里,然后再把Bundle放到Intent里,直接上代码
Intent loginIntent = new Intent(mContext, SearchCmxActivity.class); Bundle b = new Bundle(); b.putInt("isGwbEnabled", isGwbEnabled); loginIntent.putExtras( b ); startActivity(loginIntent);
取值:
int isGwbEnabled= getIntent().getExtras().getInt("isGwbEnabled");
思路二:直接利用Intent传值
Intent loginIntent=loginIntent = new Intent(mContext,GwbAccountJymxActivity.class); loginIntent.putExtra("id", “222”); startActivity(loginIntent);
putExtra有各种重载方法,第二个参数可以是任何类型。
取值:
String id = getIntent().getStringExtra("id ");
还是用Intent传值,利用这个函数
Intent android.content.Intent.putExtra(String name, Serializable value)
很明显,第二个参数是Serializable类型,就是对象要实现Serializable接口,如果是对象数组的话,数组中的对象要实现Serializable接口。
具体用法,见下边代码:
List< AfterSeachGoodsItem> totalArr=new ArrayList<AfterSeachGoodsItem>() ;Intent aftersearchIntent = new Intent(mContext,AnAfterSearchActivity.class);aftersearchIntent.putExtra("ProductCategoryLIst", (Serializable)totalArr);startActivity(aftersearchIntent) ;
取值:
List< AfterSeachGoodsItem> totalArr = (List< AfterSeachGoodsItem>) getIntent().getSerializableExtra("ProductCategoryLIst");
思路四:就是采用绕弯的方式了,就是先把数据存在本地,然后在下一个Activity中从本地取。
这种方式的缺点就是要占用本地的资源,有点是数据可以在多个Activity直接共享,关于本地存储数据的几种方式,我将在下一篇博客中介绍。
0 0
- Andriod 中两个Activity之间传值的几种思路
- TabGroup中两个Activity之间的传值
- Activity 之间传值的几种方式
- Intent在Activity之间传值的几种方式
- 两个activity之间传值
- 两个Activity之间传值
- 两个Activity之间传值
- Android中两个Activity之间的跳转
- Activity之间跳转的几种方法
- 两个Activity之间传list值
- activity和fragment之间的数据传值思路
- 两个Activity之间的跳转
- 封装类中实现另外两个Activity之间的跳转
- Android 两个Activity之间相互跳转传值 并且关闭之前的Activity
- 两个Activity之间传参
- android 中Service 和activity之间的数据传递的几种方法
- android 中Service 和activity之间的数据传递的几种方法
- Android中Activity之间数据传递的几种方法总结
- c++中冒号(:)和双冒号(::)的区别与用法
- PHP典型扩展模块安装
- PhoneGap揭开你的神秘面纱
- untiy 3d ShaderLab_第6章_VertexLit渲染路径_4_顶点照明和Unity存放光源的第三种方式
- CSS3圆角详解
- Andriod 中两个Activity之间传值的几种思路
- [LintCode] 最长公共子序列 Longest Common Subsequence
- PreferenceActivity的使用
- [EverString收录]Dr.Elephant部署指南
- 【C#设计模式-代理模式】
- 修改frame 和修改bounds的不同
- 深入讲解Android中Activity launchMode
- reactjs爬坑记8
- Jsp基础