您的位置:首页 > 其它

activity传递数据的方法

2015-12-17 22:19 489 查看
1.Intent对象

传输数据仅限简单数据和实现序列话的对象。

2.静态变量

将需要共享的对象或者数据声明为静态,可以传递任何类型的数据

3.剪切板

可以利用Android自带的剪切板功能传送数据

传递数据

Intent intent=new Intent(this,MainActivity.class);

ClipboardManager cliper=(ClipboardManager)getSystemServer

(Context.CLIPBOARD_SERVER);

cliper.setText("message");

startActivity(intent);

接收数据

ClipboardManager cliper=(ClipboardManager)getSystemServer

(Context.CLIPBOARD_SERVER);

String str=cliper.getText().toString();

4.全局对象

为每个应用程序定义一个全局的对象,该对象创建由系统负责,使用全局对象需要继承

android.app.Application类,可以在该类中定义任何方法。

package com.example.transmitdata;

import android.app.Application;

public class mAPP extends Application(){

public String str;

public Data data;

}

然后需要在AndroidManifest.xml文件中定义该类

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android ="http://schemas.andoid.com/apk/res/android"

package="com.example.transmitdata"

<application android:name=".mAPP "

......

/>

/>

可以在程序任意位置获取mAPP对象。

mAPP mapp=(mAPP)getApplicationContext();

面试官问:activity之间传递一个大的图片怎么传:

只能是用文件把图片存储,再在另一个activity中在获取;

5 基于Ipc的通信机制

context与service之间的传输,如Activity与Service之间的通信

6.基于外部存储的传输 ,File/Preference/Sqlite,如果要针对第三方应用需要Contentprovider
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: