1. 概述:
在HoneyComb3.0中出现了类似Windows剪贴板的功能,它可以方便的在某一个应用程序中或者不同的应用程序之间剪切,复制,粘贴内容。能
被剪切,复制,粘贴的内容有三类:普通字符串,URL和Intent。
2. 使用流程:
(1)获取剪贴板管理器:
ClipboardManager mClipboardManager = (ClipboardManager)getSystemService(CLIPBOARD_SERVICE);
(2)创建能够存入剪贴板的ClipData对象(ClipData对象中包含一个或多个ClipData.Item对象):
A. 创建普通字符型ClipData:ClipData mClipData = ClipData.newPlainText("Label", "Content");
B. 创建URL型ClipData:ClipData.newRawUri("Label", Uri.parse("http://www.fishme.cn/"));
C. 创建Intent型ClipData:ClipData.newIntent("Label", intent);
注意:上面三种方法只在ClipData对象中创建了一个ClipData.Item对象,如果想向ClipData对象中添加多个Item应该通过ClipData对象的
addItem()方法添加。
(3)将ClipData数据复制到剪贴板:ClipboardManager.setPrimaryClip(ClipData对象);
(4)从剪贴板中获取ClipData数据:ClipboardManager.getPrimaryClip();
(5)解析ClipData中的数据。
3. 普通字符串,URL和Intent三种数据使用情况:
(1)普通字符:就是普通字符串的剪切,复制,粘贴。
(2)URL:在复制的时候可以复制一个URL,这个URL可以是请求ContentProvider的URL,在粘贴的时候调用ContntProvider获取数据,
并使用。
(3)Intent:如,在记事本应用中长按某一个记录本条目,这时会创建删除这个记事本的Intent,并添加到剪贴板,当用户将这个记事本条目拖
到垃圾桶松开时,应用会从剪贴板中获取Intent并执行,这个记事本条目就被删除了。