Android开发中Intent传递对象的方法分析
本文实例分析了Android开发中Intent传递对象的方法。分享给大家供大家参考,具体如下:
方法一:
利用方法:public Intent putExtra (String name, Parcelable value)传递一个Parceable的参数,此方法的参数被序列化到内存。
利用方法:public Intent putExtra (String name, Serializable value)传递一个实现了序列化接口类的对象,此方法的实参被序列化到磁盘。
方法二:
把数据存放到应用程序的“Context”中,定义MyApplication类,让其继承Application类,在MyApplication中存入相关数据的引用。代码如下:
import android.app.Application;
import cn.itcast.mobilesafe.domain.TaskInfo;
public class MyApplication extends Application {
public TaskInfo tastInfo;
}
在清单文件中配置Application:
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" android:name="MyApplication">
<uses-library android:name="android.test.runner" />
将要存放的数据存入Application中:
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相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android通信方式总结》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
相关推荐
-
Android 通过Intent使用Bundle传递对象详细介绍
Android 通过Intent使用Bundle传递对象 Android开发中有时需要在应用中或进程间传递对象,下面详细介绍Intent使用Bundle传递对象的方法. 被传递的对象需要先实现序列化,而序列化对象有两种方式:java.io.Serializable和android.os.Parcelable Java中使用的是Serializable,而谷歌在Android使用了自定义的Parcelable. 两种序列化方式的区别: 1.在使用内存的时候,Parcelable比Serializa
-
在Android中通过Intent使用Bundle传递对象的使用方法
Android开发中有时需要在应用中或进程间传递对象,下面详细介绍Intent使用Bundle传递对象的方法. 被传递的对象需要先实现序列化,而序列化对象有两种方式:java.io.Serializable和android.os.Parcelable Java中使用的是Serializable,而谷歌在Android使用了自定义的Parcelable. 两种序列化方式的区别: 1.在使用内存的时候,Parcelable比Serializable性能高,推荐使用Parcelable类: 2.Ser
-
Android中Intent传递对象的两种方法Serializable,Parcelable
Android中的传递有两个方法,一个是Serializable,另一个是Parcelable. Serializable是J2SE本身就支持的.而Parcelable是Android所特有的. 二者的使用场景和区别: 1)在使用内存的时候,Parcelable比Serializable性能高,所以推荐使用Parcelable. 2)Serializable在序列化的时候会产生大量的临时变量,从而引起频繁的GC. 3)Parcelable不能使用在要将数据存储在磁盘上的情况,因为Parcelab
-
Android中Intent传递对象的3种方式详解
前言 相信Intent的用法大家已经比较熟悉了,Intent可以用来启动Activity,Service等等,同时我们也可以通过Intent来进行传递数据,当我们使用Intent在Activity 间传递信息时发现putExtra() 方法并不支持自定义对象的传输,下面就来介绍三种解决方式. 一.Serializable 方式 这是最简单的一种方法,因为我们要做的就是让我们自定义的对象实现 Serializable 这个空接口. public class Person implements Se
-
详解Android中Intent传递对象给Activity的方法
Activity回顾 activity是android程序中最重要的组件之一,它是用户与android用户交互的主要组件,类似于桌面程序的图形界面.android程序大致可以分为看的见的组件和看不见的service.看得见的组件主要就是在Activity中定义,看不见的service,包括service,BroadCastReceiver,ContentProvider等等,这是后话.今天先来大致了解一下activity. 可以理解activity为盛放组件的容器,和用户交互的组件都要放在Act
-
Android编程使用Intent传递对象的方法分析
本文实例分析了Android编程使用Intent传递对象的方法.分享给大家供大家参考,具体如下: 之前的文章中,介绍过Intent的用法,比如启动活动,发送广播,启发服务等,并且可以使用Intent时传递一些数据.如下代码所示: Intent intent = new Intent(this,SecondActivity.class); intent.putExtra("info", "I am fine"); startActivity(intent); 在传递数
-
Android Intent传递对象的两种方法(Serializable,Parcelable)详细介绍
Android Intent传递对象的两种方法(Serializable,Parcelable)详细介绍 今天要给大家讲一下Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcelable(Key, Object);当然这些Object是有一定的条件的,前者是实现了Serializable接口,而后者是实现了Parcelable接口,为了让大家更容易理解我还是照常写
-
Android系列之Intent传递对象的几种实例方法
在Android中intent传递对象主要有2种方式分别是,Bundle.putSerializable(Key,Object)和Bundle.putParcelable(Key, Object);当然这些Object是有一定的条件的,前者是实现了Serializable接口,而后者是实现了Parcelable接口,以下是我为大家做的一个实例 首先我们建立一个工程项目命名为:ObjectTestDemo 然后我们再修改main.xml布局文件,主要增加2个按钮view plaincopy to
-
Android中使用Intent在Activity之间传递对象(使用Serializable或者Parcelable)的方法
Android中的不同Activity之间传递对象,我们可以考虑采用Bundle.putSerializable(Key,Object);也可以考虑采用Bundle.putParcelable(Key, Object);其中前面一种方法中的Object要实现Serializable接口,后面一种方法中的Object要实现Parcelable接口.下面我们以一个完整的例子来说明. 1.新建一个Android的工程,其中该工程的目录结构如下图: 2. 修改main.xml布局文件.布局文件的源码如下
-
Android开发中Intent传递对象的方法分析
本文实例分析了Android开发中Intent传递对象的方法.分享给大家供大家参考,具体如下: 方法一: 利用方法:public Intent putExtra (String name, Parcelable value)传递一个Parceable的参数,此方法的参数被序列化到内存. 利用方法:public Intent putExtra (String name, Serializable value)传递一个实现了序列化接口类的对象,此方法的实参被序列化到磁盘. 方法二: 把数据存放到应用
-
Android开发中播放声音的两种方法分析
本文实例讲述了Android开发中播放声音的两种方法.分享给大家供大家参考,具体如下: 在Android中,音频.视频等多媒体元素的加入,使得应用程序的用户体验更好.可以说,现在的手机,已经远远不只作为通信工具,更成为娱乐.办公的必备产品. Android提供了简单的音频API.一般大家使用的是MediaPlayer播放音频,这也是最常见的一种播放声音的工具.这种工具在互联网上有大量的实例,因此在此只做简单的介绍. 对播放行为的控制是三个大家非常熟悉的方法:start().stop()和paus
-
Android编程实现全局获取Context及使用Intent传递对象的方法详解
本文实例讲述了Android编程实现全局获取Context及使用Intent传递对象的方法.分享给大家供大家参考,具体如下: 一.全局获取 Context Android 开发中很多地方需要用到 Context,比如弹出 Toast.启动活动.发送广播.操作数据库-- 由于很多操作都是在活动中进行的,而活动本身就是一个 Context 对象,所以获取 Context 并不是那么困难. 但是,当应用程序的架构逐渐开始复杂起来的时候,很多的逻辑代码都将脱离 Activity 类,由此在某些情况下,获
-
Android开发中Intent用法总结
本文实例讲述了Android开发中Intent用法.分享给大家供大家参考,具体如下: Android手机软件开发中,Intent作为手机软件开发时很重要的对象需要引起我们的重视,实际上,intent也是体现Android开发具有其独特性的一个标志性的对象. 当一个Activity要启动另外一个Activity的时候,也许一个以前较为熟悉的模式是:调用一个new函数,直接创建具有窗口特征类的对象,又或者直接调用一个启动函数来启动.这种方式简洁.明了,但是却违背了Android开发的理念.Andro
-
Android编程使用Intent传递图片的方法详解
本文实例讲述了Android编程使用Intent传递图片的方法.分享给大家供大家参考,具体如下: 基本思路是先把bitmap转化为byte数组,用Intent传递数组,在将数组转化为bitmap bitmap转化为byte数组的方法: private byte[] Bitmap2Bytes(Bitmap bm){ ByteArrayOutputStream baos = new ByteArrayOutputStream(); bm.compress(Bitmap.CompressFormat.
-
Android开发之获取LayoutInflater对象的方法总结
本文实例讲述了Android开发之获取LayoutInflater对象的方法.分享给大家供大家参考,具体如下: 在写Android程序时,有时候会编写自定义的View,使用Inflater对象来将布局文件解析成一个View.本文主要目的是总结获取LayoutInflater对象的方法. 1.若能获取context对象,可以有以下几种方法: LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYO
-
Android开发中Toast显示消息的方法小结
本文实例总结了Android开发中Toast显示消息的方法.分享给大家供大家参考,具体如下: Android中提供一种简单的Toast消息提示框机制,可以在用户点击了某些按钮后,提示用户一些信息,提示的信息不能被用户点击,Toast的提示信息根据用户设置的显示时间后自动消失.Toast的提示信息可以在调试程序的时候方便的显示某些想显示的东西. 两种方法创建Toast 第一种方法的Java代码: makeText(Context context, int resId, int duration)
-
Android开发中TextView各种常见使用方法小结
本文实例讲述了Android开发中TextView各种常见使用方法.分享给大家供大家参考,具体如下: 效果图: XML布局文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout android:id="@+id/root" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:
随机推荐
- Oracle中正则表达式的使用实例教程
- Windows Server 2003下配置IIS6.0+php5+MySql5+PHPMyAdmin环境的图文教程
- 浅析Java中的GC垃圾回收器的意义及与GC的交互
- 浅谈Java设计模式之开放封闭原则
- JS采用绝对定位实现回到顶部效果完整实例
- php上传excel表格并获取数据
- 使用xampp搭建运行php虚拟主机的详细步骤
- js 事件处理函数间的Event物件是否全等
- JavaScript利用闭包实现模块化
- javascript动画之模拟拖拽效果篇
- jquery获取form表单input元素值的简单实例
- jQuery 1.8 Release版本发布了
- java 中ThreadPoolExecutor原理分析
- 从C/C++迁移到PHP——判断字符类型的函数
- C++简单输出钻石菱形图效果
- andoid打包短信发送到gmail邮箱实现代码
- Python编程实现粒子群算法(PSO)详解
- vue项目部署到Apache服务器中遇到的问题解决
- 利用Pandas读取文件路径或文件名称包含中文的csv文件方法
- 微信小程序checkbox组件使用详解
