当前位置: 首页 > news >正文

Android 复制文本内容到系统剪贴板的最简单实践

Android 复制文本内容到系统剪贴板的最简单实践

这个例子很简单,直接上截图和代码。

布局文件activity_copy.xml代码如下:

复制代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:id="@+id/tvMsg" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="记者问一路人:“大妈,您觉得雾霾影响大吗?”路人:“能不大吗?首先你要看清楚,我是你大爷。" android:textSize="20sp" /> <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="20dp" android:onClick="onClickCopy" android:text="复制上面的文本内容" /> </LinearLayout>
复制代码

后台CopyActivity.java代码如下:

复制代码
package chengyujia.demo.aty;

import android.content.Context;
import android.os.Bundle; import android.text.ClipboardManager; import android.view.View; import android.widget.TextView; import android.widget.Toast; import chengyujia.demo.R; public class CopyActivity extends BaseActivity { private TextView tvMsg; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_copy); tvMsg = (TextView) findViewById(R.id.tvMsg); } public void onClickCopy(View v) { // 从API11开始android推荐使用android.content.ClipboardManager // 为了兼容低版本我们这里使用旧版的android.text.ClipboardManager,虽然提示deprecated,但不影响使用。 ClipboardManager cm = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE); // 将文本内容放到系统剪贴板里。  cm.setText(tvMsg.getText()); Toast.makeText(this, "复制成功,可以发给朋友们了。", Toast.LENGTH_LONG).show(); } }
复制代码

核心代码就两句:

ClipboardManager cm = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);

cm.setText(要复制的文本内容);

相关文章:

  • 9种用户体验设计的状态是必须知道的(二)
  • 用ASCII码显示string.xml中的特殊字符
  • 11.2.0.3 hosts里边的scanip信息删除与否对数据库是否重启探索
  • SpringBoot揭秘:快速构建微服务体系
  • C# 中的多线程(转载)
  • 20161122学习笔记
  • Linux systemd 打开调试终端、添加开机自运行程序
  • 设置python的默认编码为utf8
  • python 读写INI配置文件
  • Linux基础-linux命令:csplit
  • Ubuntu 16.04 - python3 安装mysql驱动
  • 设计模式——观察者模式:气象监测应用
  • C#学习基本概念之事件(四)---EventHandler委托(事件处理)
  • 微信小程序开发思路
  • Liunx Shell入门
  • python3.6+scrapy+mysql 爬虫实战
  • 「面试题」如何实现一个圣杯布局?
  • Eureka 2.0 开源流产,真的对你影响很大吗?
  • iOS动画编程-View动画[ 1 ] 基础View动画
  • Java基本数据类型之Number
  • Laravel 菜鸟晋级之路
  • Redis字符串类型内部编码剖析
  • Tornado学习笔记(1)
  • yii2权限控制rbac之rule详细讲解
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 欢迎参加第二届中国游戏开发者大会
  • 简单基于spring的redis配置(单机和集群模式)
  • 蓝海存储开关机注意事项总结
  • 使用Swoole加速Laravel(正式环境中)
  • 微信开源mars源码分析1—上层samples分析
  • 项目实战-Api的解决方案
  • 小李飞刀:SQL题目刷起来!
  • python最赚钱的4个方向,你最心动的是哪个?
  • 宾利慕尚创始人典藏版国内首秀,2025年前实现全系车型电动化 | 2019上海车展 ...
  • 仓管云——企业云erp功能有哪些?
  • 微龛半导体获数千万Pre-A轮融资,投资方为国中创投 ...
  • #define、const、typedef的差别
  • #考研#计算机文化知识1(局域网及网络互联)
  • #我与Java虚拟机的故事#连载15:完整阅读的第一本技术书籍
  • (附源码)ssm旅游企业财务管理系统 毕业设计 102100
  • (附源码)ssm学生管理系统 毕业设计 141543
  • (附源码)计算机毕业设计SSM在线影视购票系统
  • (十三)Java springcloud B2B2C o2o多用户商城 springcloud架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)...
  • **CI中自动类加载的用法总结
  • .chm格式文件如何阅读
  • .gitignore文件---让git自动忽略指定文件
  • .NET Framework Client Profile - a Subset of the .NET Framework Redistribution
  • .NET 反射的使用
  • .Net 高效开发之不可错过的实用工具
  • .net 前台table如何加一列下拉框_如何用Word编辑参考文献
  • .NET开发不可不知、不可不用的辅助类(三)(报表导出---终结版)
  • @Transient注解
  • [ vulhub漏洞复现篇 ] Apache Flink目录遍历(CVE-2020-17519)
  • [AIGC] 使用Curl进行网络请求的常见用法
  • [AIR] NativeExtension在IOS下的开发实例 --- IOS项目的创建 (一)