HoneyComb3.0技术系列之ClipBoard

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并执行,这个记事本条目就被删除了。

你可能感兴趣的:(HoneyComb3.0技术系列之ClipBoard)