Android开发中Intent传递对象的方法分析

时间:2022-02-18 07:23:01

本文实例分析了Android开发中Intent传递对象的方法。分享给大家供大家参考,具体如下:

方法一:

利用方法:public Intent putExtra (String name, Parcelable value)传递一个Parceable的参数,此方法的参数被序列化到内存。

利用方法:public Intent putExtra (String name, Serializable value)传递一个实现了序列化接口类的对象,此方法的实参被序列化到磁盘。

方法二:

把数据存放到应用程序的“Context”中,定义MyApplication类,让其继承Application类,在MyApplication中存入相关数据的引用。代码如下:

?
1
2
3
4
5
import android.app.Application;
import cn.itcast.mobilesafe.domain.TaskInfo;
public class MyApplication extends Application {
  public TaskInfo tastInfo;
}

在清单文件中配置Application:

?
1
2
3
4
<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" android:name="MyApplication">
    <uses-library android:name="android.test.runner" />

将要存放的数据存入Application中:

?
1
2
3
4
5
6
7
8
Intent intent = new Intent(TaskManagerActivity.this, AppDetailActivity.class);
MyApplication myApp = (MyApplication) getApplication();
Object obj = lv_task_manager.getItemAtPosition(position);
if(obj instanceof TaskInfo){
  TaskInfo info = (TaskInfo) obj;
  myApp.tastInfo = info;
  startActivity(intent);
}

希望本文所述对大家Android程序设计有所帮助。