【鸿蒙】剪贴板的简单复制粘贴

简介: 文章目录前言1.简述2.页面布局3.程序实现

前言

最近忙的一匹,都没什么时间去学,但是今天有空看了看文档,视频去学习,在这做个记录

1.简述

同意设备的不同或相同应用可以通过系统的剪贴板来实现简单的数据流转,


在使用剪贴板服务时,需要注意以下几点:


  • 只有在前台获取到焦点的应用才有读取系统剪贴板的权限(系统默认输入法应用除外)。
  • 写入到剪贴板服务中的剪贴板数据不会随应用程序结束而销毁。
  • 对同一用户而言,写入剪贴板服务的数据会被下一次写入的剪贴板数据所覆盖。
  • 在同一设备内,剪贴板单次传递内容不应超过500KB。


2.页面布局

用到的组件:

三个Button

一个TextField可编辑文本框

一个Text文本

<?xml version="1.0" encoding="utf-8"?>
<DirectionalLayout
    xmlns:ohos="http://schemas.huawei.com/res/ohos"
    ohos:height="match_parent"
    ohos:width="match_parent"
    ohos:background_element="#9ff"
    ohos:orientation="vertical">
    <Text
        ohos:id="$+id:text_helloworld"
        ohos:height="match_content"
        ohos:width="250vp"
        ohos:background_element="#0088bb"
        ohos:layout_alignment="horizontal_center"
        ohos:text="可编辑文本框架"
        ohos:text_size="40vp"
        ohos:padding="5vp"
        ohos:top_margin="30vp"
        />
    <TextField
        ohos:id="$+id:textfield"
        ohos:height="250vp"
        ohos:width="250vp"
        ohos:hint="请输入"
        ohos:layout_alignment="horizontal_center"
        ohos:text_color="#888888"
        ohos:text_size="20fp"
        ohos:padding="5vp"
        ohos:background_element="#ffffff"
        />
    <Button
        ohos:height="match_content"
        ohos:width="match_content"
        ohos:id="$+id:pastrborad_copy"
        ohos:text="点击复制"
        ohos:text_size="20fp"
        ohos:text_color="#ffffff"
        ohos:background_element="$graphic:button_"
        ohos:top_padding="8vp"
        ohos:left_padding="50vp"
        ohos:bottom_padding="8vp"
        ohos:right_padding="50vp"
        ohos:layout_alignment="horizontal_center"
        ohos:top_margin="30vp"
        />
    <Button
        ohos:height="match_content"
        ohos:width="match_content"
        ohos:id="$+id:pastrborad_paste"
        ohos:text="点击粘贴"
        ohos:text_size="20fp"
        ohos:text_color="#ffffff"
        ohos:background_element="$graphic:button_"
        ohos:top_padding="8vp"
        ohos:bottom_padding="8vp"
        ohos:left_padding="50vp"
        ohos:right_padding="50vp"
        ohos:layout_alignment="horizontal_center"
        ohos:top_margin="30vp"
        />
    <Button
        ohos:height="match_content"
        ohos:width="match_content"
        ohos:id="$+id:pastrborad_clear"
        ohos:text="清除剪贴板"
        ohos:text_size="20fp"
        ohos:text_color="#ffffff"
        ohos:background_element="$graphic:button_"
        ohos:top_padding="8vp"
        ohos:left_padding="50vp"
        ohos:bottom_padding="8vp"
        ohos:right_padding="50vp"
        ohos:layout_alignment="horizontal_center"
        ohos:top_margin="30vp"
        />
</DirectionalLayout>

3.程序实现

每点击按钮或文本框都能响应,得到结果。代码过于长就不放在本文了



通过在程序中写入的数据,我们在运行后直接复制,然后系统会自己调用所提供的文本检测是否为空,不为空则输出值,清除剪贴板则是将里面的值设置为""空文本。


效果:


981fd0259d374a6c86960ac42540b4dd.gif

相关文章
|
7月前
|
Android开发 iOS开发 Windows
Airtest:各平台的剪切板功能汇总
Airtest:各平台的剪切板功能汇总
SublimeText配置Markdown编辑及预览
本文详细介绍了如何配置Sublime Text及相关插件,使之成为Markdown编辑器并且能够在浏览器中实现预览功能。
|
7月前
|
Linux Android开发 iOS开发
Typora 编辑器 讲解 包括使用方式 快捷键
Typora 编辑器 讲解 包括使用方式 快捷键
129 1
|
Web App开发 缓存 前端开发
canvas项目内复制粘贴及自定义菜单复制粘贴实现
一、 产品视角下复制粘贴需要解决的问题 复制粘贴时,需要静默复制(剪切板内不会看到复制的具体内容, 同miro) 统一自定义鼠标复制粘贴和键盘复制粘贴内容 实现外部内容也可以粘贴到内部
1276 0
|
C语言 C++
【VS使用】如何换VS2022背景颜色和分屏观看多文件,还有快捷复制粘贴?
【VS使用】如何换VS2022背景颜色和分屏观看多文件,还有快捷复制粘贴?
363 0
【VS使用】如何换VS2022背景颜色和分屏观看多文件,还有快捷复制粘贴?
|
开发工具 iOS开发
ios14一直弹出粘贴(解决方案)
原因在UIPasteboard获取粘贴板的类,有的第三方SDK用到了UIPasteboard读取iOS系统的粘贴板内容,所以iOS14此次更新是让用户知晓,此APP读取了你的粘贴板内容,并在读取的时候展示了出来。在iOS14以下APP也是可以读取粘贴板内容的,只是用户看不到。
395 0
ios14一直弹出粘贴(解决方案)
IOS8下利用自动布局实现键盘的弹出效果
IOS8下利用自动布局实现键盘的弹出效果
98 0
|
C#
wpf 复制/剪切到本地系统剪切板中以供右键粘贴用
原文:wpf 复制/剪切到本地系统剪切板中以供右键粘贴用   http://www.cnblogs.com/yhdkzy/archive/2012/11/27/2790655.html   ///         /// 复制或剪切文件到剪切板         /// ...
1258 0
|
Android开发
安卓10获取剪贴板内容
安卓10获取剪贴板内容
990 1
|
存储 前端开发 JavaScript
[MDX Editor] 微信排版工具新选择
我写了一个微信排版编辑器,使用 MDX,可自定义组件、样式、生成二维码、代码 diff 高亮,可导出 markdown 和 PDF。
574 0
[MDX Editor] 微信排版工具新选择