android Activtity 之间传递对象的方法 application
来源:互联网 发布:linux加磁盘 编辑:程序博客网 时间:2024/06/10 18:52
这里随便记录下 我不知道这样的方法行不行,如果不好 请大家指正~
这里主要说下android 中activity之间的传值方法 以前最常用的是Intent bundle 来传递一些数据,但是这个只能传递写基本数据类型。、如果要传LIST POJO之类的就力不从心了,要么重写这个Bundle 理论上是可以的扩展下,application是整个应用程序中生命周期最长的,并且是全局的 单列的,任何一个地方我们获取到的都是一样的,所以我们可以在里面缓存一些简单的数据,
这里就不说这个这个了 ,我们来说下 application这个 ,具体概念大家去搜下这个 我就说下用这个如何传递数据
下面看代码吧 很简单就几行,
首先我们自己定义一个 application 代码如下
public class MyApplication extends Application{public static MyApplication myApplication;public static Map<String,Object> applicationMap;public static MyApplication getInstance(Context context) {if(myApplication == null){myApplication = (MyApplication)context.getApplicationContext();}return myApplication;}public Map<String,Object> getApplicationMap(){if(applicationMap == null ){applicationMap = new HashMap<String, Object>();}return applicationMap;}}完成后记得要在AndroidManifest.xml 的application 中加个name属性并且制定我们自定义的application
<application android:name=".MyApplication" android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.example.application.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.example.application.OtheActivity" android:theme="@style/AppTheme" />接下去是 2个activity
public class MyApplication extends Application{public static MyApplication myApplication;public static Map<String,Object> applicationMap;public static MyApplication getInstance(Context context) {if(myApplication == null){myApplication = (MyApplication)context.getApplicationContext();}return myApplication;}public Map<String,Object> getApplicationMap(){if(applicationMap == null ){applicationMap = new HashMap<String, Object>();}return applicationMap;}}
public class OtheActivity extends Activity{private MyApplication application;private UserBean user;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.other_main);application = MyApplication.getInstance(this);TextView t = (TextView) findViewById(R.id.name1);t.setText(application.getApplicationMap().get("name").toString());user = (UserBean)application.getApplicationMap().get("user");TextView t1 = (TextView) findViewById(R.id.name2);t1.setText(user.getName());}}
0 0
- android Activtity 之间传递对象的方法 application
- Android 的 Activity 之间传递对象引用的方法
- Android中在Activity之间传递数据的另一种方法, 使用application context
- Android中在Activity之间传递数据的另一种方法, 使用application context
- Activity 之间传递对象的方法
- activity和activity之间传递对象,fragment和fragment之间传递对象的方法
- Android Activity 之间传递对象
- android Activity之间传递对象
- android Activity之间传递对象
- 关于Bundle在activity之间传递对象的方法
- Android Activtity Security
- Android Activtity Security
- Android Activtity Security
- android中传递复杂参数,activity之间和fragment之间的bundle传递集合/对象
- android中传递复杂参数,activity之间和fragment之间的bundle传递集合/对象
- android中传递复杂参数,activity之间和fragment之间的bundle传递集合/对象
- Android开发-基础:Activity之间的 对象传递
- Activity之间的 对象传递
- ASP.NET大文件上传方法浅析
- Android 高仿QQ 界面滑动效果
- 使用事件驱动模型实现高效稳定的网络服务器程序
- 收藏:ASP.NET提供文件下载函数(支持大文件、续传、速度限制、资源占用小)
- ubuntu的init与系统服务设置
- android Activtity 之间传递对象的方法 application
- 黑马程序员---集合框架<泛型>
- 小强的HTML5移动开发之路(22)—— Adobe DreamWeaver CS6安装与破解
- 基于树梅派的视频监控机器人Verybot
- exosip 对比osip
- win7下Viual Studio 2008升级,没有序列号输入框的解决办法
- Binary Tree Inorder Traversal
- VC++中把窗体封装到dll中并调用
- 03_java编码格式