Android TextView 长按复制到剪切板,粘贴

Android textview 实现按自由选择复制功能 这里有一个大坑,我的viewGroup中有一个这个属性android:descendantFocusability=”blocksDescendants”开始没有注意到,试了好多方法都不行,后来才看到这个属性,顺便科普一下,这个属性有三个值~ beforeDescendants:viewgroup会优先其子类控件而获取到焦点 afterDescendants:viewgroup只有当其子 阅读详情

和Window系统一样,Android也有剪切板(ClipboardManager)。

对应的类:

API 11之前: android.text.ClipboardManager

API 11之后: android.content.ClipboardManager

下面是代码

if (android.os.Build.VERSION.SDK_INT > 11) {
android.content.ClipboardManager c = (android.content.ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
  c.setPrimaryClip(ClipData.newPlainText("sinaweibo", buildShareCopyContent()));

} else {
  android.text.ClipboardManager c = (android.text.ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
c.setText(activitioncode.getText());
}

1. 概述: 早期版本的Android剪切板只能复制文本(可以为复合文本)信息。在API 11后对ClipboardManager进行了升级,使之可以通过(ClipData)复制文本、Uri和Intent。

(注意:在Android11版本之后,原来利用剪切板传递数据使用的setText()和getText()方法被弃用了,只能使用ClipData对象来代替。)

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

【硬核干货:集成电路-ESD基础知识汇总——从原理到器件、电路和工艺一文总结讲透】 保姆式笔记:集成电路-ESD基础知识汇总——从原理到器件、电路和工艺一文总结讲透 阅读详情

相关推荐

在SAP系统中,公司间关联交易(Intercompany Transactions)或内部往来主要有三种经典的实现模式。这些模式的选择取决于企业的业务复杂度、自动化需求以及对实时性的要求

SAP系统中公司间关联交易的三种实现模式分析:1)手工记账模式(FB60/FB70)适用于低频交易,灵活性高但易出错;2)SD/MM跨公司销售采购模式(VA01/VF01/ME21N)适用于真实业务流转,业务财务集成度高;3)自动清算模式(F.13/ICR)适合高频交易集团企业,支持实时自动对账。关键成功要素包括正确配置贸易伙伴字段、统驭科目及专用凭证类型。建议根据企业规模、业务复杂度及自动化需求选择合适模式,其中大型集团优先考虑自动对账方案以确保合并报表准确性。

金牌架构师 504

Android TextView复制实现,Android复制文本,Selectable

自定义textviewimport android.content.Context; import android.util.AttributeSet; import android.widget.EditText; public class NewTextView extends EditText { public NewTextView(Context context) { ...

meixi_android的博客 2786

claude-code-main.zip

claude源码

androidTextView自由选择复制

根据时代进步,那些干产品的也叼砖起来了,今天就遇到一个需求,需要对TextView的文案进行自由选择复制,不怕,我们是勇敢牛牛。比较实用,而且直接复制去就可以用,自己写主要费大脑不是。

叶已初秋的博客 3094

安卓:实现复制粘贴功能

Android提供的一个系统服务,用于管理剪贴板内容。它允许您在应用程序之间复制粘贴文本、链接、图像等数据。:将指定的ClipData对象设置为主要剪贴板内容。这可以用于复制文本、链接、图像等到剪贴板。ClipData clipData = ClipData.newPlainText("label", "要复制的文本");:获取主要剪贴板的内容。返回一个ClipData对象,其中包含主要剪贴板中的数据。// 处理剪贴板内容:检查主要剪贴板是否有内容。如果剪贴板包含了数据,则返回true。

A125679880的博客 3万+

Android剪切板(ClipboardManager) 复制文本

博客源址:Android剪切板(ClipboardManager) 复制文本 博客时间:2014-07-09 11:35:11 和Window系统一样,Android也有剪切板(ClipboardManager)。 对应的类: API 11之前: android.text.ClipboardManager API 11之后: android.content.Cli

Android移动开发者的专栏 1978

android文本复制

TextView android: id = " @+id/tv_content " android: layout_width = " wrap_content " android: layout_height = " wrap_content " android: text = " 我是测试文本 " android: textSize = " 16sp " />

D_AKJS 2003

android复制粘贴功能,Android TextView设置复制粘贴功能

一、前言:1.文本拥有复制功能:在需要用到TextView复制的功能的时候,我们只需要在xml文件中加一行代码就行:android:id="@+id/item_alertDetailInfo_tvSolveTime"android:layout_width="match_parent"android:layout_height="wrap_content"android:textIsSelect...

weixin_42492000的博客 1326

android 剪切板监听_android剪切板操作

前言在Android开发过程中偶尔会涉及到剪切板相关操作。今天,就让我们来学习下剪切板实现的一些功能吧。我把剪切板相关内容封装到一个类ClipboardHelper中,下面就来讲讲它的使用吧。今天涉及的内容:ClipboardHelper类中方法简介MainActivity代码效果图和项目结构图ClipboardHelper源码先来波效果图监听本app复制动作效果图k.gif监听其他app复制进来...

weixin_35665083的博客 2262

textview复制_Android textview 实现按自由选择复制功能的方法

这里有一个大坑,我的viewGroup中有一个这个属性android:descendantFocusability=”blocksDescendants”开始没有注意到,试了好多方法都不行,后来才看到这个属性,顺便科普一下,这个属性有三个值~beforeDescendants:viewgroup会优先其子类控件而获取到焦点afterDescendants:viewgroup只有当其子类控件不需要获...

weixin_39955423的博客 707

textview 复制粘贴_Android TextView使用剪贴板复制粘贴

textview 复制粘贴In this tutorial, we’ll implement the copy-paste feature on a TextView in our Android Application. At the end of this article, you’d be able to copy a text to the Android System’s Clipboa...

从零开始的教程世界 1823

TextView复制(高仿微信文字复制粘贴

在适配器里面写以下代码,原理就是给TextView设置按点击事件,然后复制到剪切板上(ClipboardManager) 导入包   import android.text.ClipboardManager; 微信里面按了变暗的效果就是一个背景选择器 holder.content.setOnLongClickListener(new View.OnLongClickListener

ht1063899049的博客 6114

android复制粘贴功能的实现

话不多说直接上代码 1.java代码 public class GoodSearch extends AppCompatActivity implements View.OnClickListener{ private static final String TAG = "橘子"; private TextView text; private Button copyBtn,pasteBtn; private ClipData mClipData; //剪切板

kaolagirl的博客 2100

TextView复制实现方法小结

复制到剪切板

afunyusong的专栏 422

安卓textview实现获取内容到剪切板,跳到通讯录新增

这里需要记住一点先设置textview按的属性 vh.tel.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View view) { ClipboardManager cmb =

forLove 867

android textview复制文字,Android:从TextView复制到剪贴板所选文本

TextView tv;String stringYouExtracted = tv.getText().toString();int startIndex = tv.getSelectionStart();int endIndex = tv.getSelectionEnd();stringYouExtracted = stringYouExtracted.subString(startIndex...

weixin_39907762的博客 336

如何将以选择好的文本存入剪切板中。

<br />需要实现将textview中显示的文字,复制到剪切板中。<br />起初看了下代码,发现EditText中直接就有这样的选项,难道是掉系统的?打开EditText中的源码,里面内容很少,但是却看到了想要的setSelection,用了下,发现报错,主要是发现不了这个类。<br />然后打开,textView的源码,发现里面就非常详细了,里面记录如何在TextView复制文字,看到这点,终于发现,一开始自己就想错了,<br />Selection只是一个选择文字的工具类,不具备复制文字的功能。查

Hero_Cat的专栏 1408

Android剪切板传递数据

在Activity之间传递数据还可以利用一些技巧,不管windows还是Linux操作系统,都会支持一种叫剪切板的技术,也就是某一个程序将一些数据复制到剪切板上,然后其他的任何程序都可以从剪切板中获取数据,在Android系统中也存在此技术。  使用剪切板会用到,ClipboardManager对象,这个对用剪切板会用到,ClipboardManager象用来操作剪切板,但是没有提供pu

Fight for Dignitity & Responsibility 的专栏 1584

android字符串复制到粘贴板,Android 中将字符串文字内容复制到系统剪贴板并从剪贴板拿出来显示...

源码下载地址:http://download.csdn.net/detail/waww116529/8465943主要代码:ClipboardManager cmb= (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);//将et中的内容设置进剪贴板中cbm.setText(et.getText().toString());//将剪贴板中的...

weixin_32239819的博客 281
上一篇: Android Studio配置SVN服务器
下一篇: AndroidStudio怎样导入library项目开源库
panggeSun
博客等级 码龄12年 19粉丝 53原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值