android 使用Intent传递数据之剪切板
2012-11-30 21:55
555 查看
windows和linux中都支持一种剪切板技术,就是一个程序将一些数据复制到剪切板上,然后其他的程序可以从剪切板中获取数据。
调用服务:
这样就把数据放入了剪切板中了
取数据的时候代码为:
如果需要传递复杂的数据格式,可以自己定义一个实现了Serializable的类:
public class MyData implements Serializable{
定义数据。。。。
}
读取自定义对象,并将其转换为字符串,写入剪切板
读取剪切板的字符串,并将其转换为对象
调用服务:
ClipData clipdata = ClipData.newPlainText("name", "clipData"); ClipboarManager clipboarManager=(ClipboarManager)getSystemService(Context.CLIPBOARD_SERVICE);
这样就把数据放入了剪切板中了
取数据的时候代码为:
ClipboarManager clipboarManager=(ClipboarManager)getSystemService(Context.CLIPBOARD_SERVICE); if(clipboarmanager.getPrimaryClipDescription().hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN)) { ClipData cd = clipboarmanager.getPrimaryClip(); Item item = cd.getItemAt(0); textview.setText(item.getText().toString()); }
如果需要传递复杂的数据格式,可以自己定义一个实现了Serializable的类:
public class MyData implements Serializable{
定义数据。。。。
}
读取自定义对象,并将其转换为字符串,写入剪切板
//自定义一个对象 MyData md = new MyData("kimifdw",26); //定义字符串 String baseToString =""; //1.将对象转换成字符串 ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); try { ObjectOutputStream objectOutputStream = new ObjectOutputStream(byteArrayOutputStream); objectOutputStream.writeObject(md); baseToString = Base64.encodeToString(byteArrayOutputStream.toByteArray(), Base64.DEFAULT); objectOutputStream.close(); } catch(Exception e) { e.printStackTrace(); }
读取剪切板的字符串,并将其转换为对象
//将base64转换成toString byte[] base64ToString = Base64.decode(item.getText().toString(), Base64.DEFAULT); //从流中读取数据 ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(base64ToString); try { ObjectInputStream objectInputStream = new ObjectInputStream(byteArrayInputStream); MyData md = (MyData)objectInputStream.readObject(); objectInputStream.close();//关闭 txtView.setText(md.toString()); } catch(Exception e) { e.printStackTrace(); }
相关文章推荐
- android 使用Intent传递数据之剪切板
- Android 开发中使用Intent传递数据的方法
- android 使用Intent传递数据之静态变量
- Android Intent对象使用和Activity间数据的传递
- android 使用Intent传递数据之返回结果
- 【Android】Intent中使用Extra传递数据
- 【Android】使用Intent实现数据传递
- Android使用intent、bundle传递数据
- Android 一一 使用Intent传递数据
- (转)Android剪切板传递数据的使用
- Android 使用剪切板传递数据
- android中使用Intent在activity之间传递数据
- 【Android 开发教程】使用Intent传递数据
- android中使用两个intent使数据在两个Activity中传递
- Android 使用Intent传递数据
- Android 开发中使用Intent传递数据的方法
- Android 使用Intent实现Activity跳转和数据传递
- Android中Activity之间的数据传递和Intent使用
- android 使用Intent传递数据之返回结果
- android 开发手记 activity 之间数据的传递 intent 对象的使用