Android开发-Android中的剪贴板(Clipboard)的妙用

1  简介:

Clipboard是Android提供的一个系统服务,它提供了一个全局的剪贴板,让文字、图片、数据,在多App间共享成为可能,今天,我们来了解下它的真面目,以及被玩坏的新姿势。

 2 Clipboard的应用场景举例:

我们先来看看一些App对Clipboard的应用,例如手机迅雷,如果你复制了一个链接,那么打开迅雷后,会自动检测并提示下载;
再例如一些翻译软件,例如有道词典、沪江小D,他们都有一个功能,即复制查词,使用的也是这个原理;
再例如比较常用的手淘喵口令,实际上也是利用这个功能;
当然,也有一些比较专业的Clipboard App,例如Clipboard Actions;

我们可以看见,实际上,他就是帮你解析了各种可能的剪贴板,并对他们提供了各种后续功能的集合,确实非常实用,不过,看完今天的文章,相信你要写一个这样的App,估计也就分分钟。
所以说,这些就是一些Clipboard的基本使用场景,更多场景,没有做不到,只有想不到。

3 Clipboard的使用:

Clipboard的基本使用,

主要是ClipboardManager和ClipData

代码如下:

ClipboardManager mClipboardManager = mClipboardManager =
(ClipboardManager) getSystemService(CLIPBOARD_SERVICE);

ClipData clipData = mClipboardManager.getPrimaryClip();
ClipData.Item item = clipData.getItemAt(<span class="hljs-number">0</span>);
<span class="hljs-built_in">String</span> text = item.getText().toString();

 说明:

ClipboardManager就是剪贴板相关的类,它可以获取AndroidSDK中的一个服务。

所以用getSystemService来获取这个服务的实例。

4 ClipData类和ClipboardManager类的简单说明:

我们可以创建以下三种类型的ClipData:

类型 描述
Text newPlainText(label, text) 返回ClipData对象,其中ClipData.Item对象包含一个String
URI newUri(resolver, label, URI) 返回ClipData对象,其中ClipData.Item对象包含一个URI
Intent newIntent(label, intent) 返回ClipData对象,其中ClipData.Item对象包含一个Intent

对应的,我们也能获取到不同类型的ClipData。

ClipboardManager的说明:

ClipboardManager中有很多判断与操作方法:

类型 描述
getPrimaryClip() 返回剪贴板上的当前Copy内容
getPrimaryClipDescription() 返回剪贴板上的当前Copy的说明
hasPrimaryClip() 如果当前剪贴板上存在
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

liranke

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值