本文我们将从以下几个部分来详细介绍如何在iPhone,iPad或iPod Touch 上完成复制和粘贴:复制和粘贴文本、复制和粘贴图片、参考
能简单地复制和粘贴文本或图片对于改写和编辑文件,邮件,展示等等来说都非常必要。这篇文章将为你介绍如何在你的iPhone,iPad或iPod Touch上完成文本和图片的复制与粘贴。第一部分:复制和粘贴文本
第1步:点击一个词并长按。
长按后屏幕上会显示一个放大镜,并且会出现一个光标或是整个词被选中。如果选词有误,拖动光标到你需要选择的词那里。
第2步:放开手指。
屏幕上会出现一系列的选择按键,同时还会出现可以左右拖动的蓝色拖动球。
第3步:调整你的选择。
拖动控制球可以只选择你需要进行剪切和粘贴的文本。
点击选择按键里的“复制”。之后按键会消失,这时文本已经被复制。你会注意到高亮和选择条还在。
像网页和其他无法编辑的文本,不会出现“粘贴”的选项。一般情况下会出现选项,你可以选择复制或是定义所选文字。
第4步:粘贴文本。
把光标移到你需要插入文字的地方,然后点击。一系列新的选择按键会出现,包括“选择”,“全选”或“粘贴”。此时点击“粘贴”。你所选择的文本就会粘贴到光标所在的位置了。
第二部分:复制和粘贴图片
第1步:在图片上点击并长按。
打开图片库,找到一张你需要复制的图片。点击并长按,“复制”按钮就会出现。点击复制图片。
这个方法也适用于复制网站或文件里的图片。
第2步:粘贴图片。
打开一个允许粘贴图片的软件,比如“短信”软件。点击信息输入区并长按,出现“粘贴”选项时点击粘贴。这是你所复制的图片就插入到信息中了。
小提示
一些图片软件可以识别你剪切板上的图片,并且当你新建一个文档的时候会显示菜单选项,让你可以粘贴图片。
警告
当你同时复制图片和文字时要注意。如果你不小心把图片粘贴到文本区,粘贴的内容会是图片代码,而不是图片本身。如果你需要粘贴的是大图片,就会显示出很长的代码!这时你可以点击并长按,然后选择“全选”,并用拖动条选择粘贴上的文本,你就可以很快的将其删除了。
不是所有的网站都能完成对文字和图片的复制的。
参考
http://manuals.info.apple.com/en_US/ipad_user_guide.pdf
扩展阅读,以下内容您可能还感兴趣。
ios上的复制粘帖有时怎么不管用,求正确方法
可以粘贴的,长按复制之后,点到对话框,轻轻点击空白处,就会出现粘贴。不要长按,只需要轻轻点住一下就可以了
无法复制粘贴,建议重启手机试试。
如果重启还不行,就刷机重新安装输入法本回答被提问者采纳
为什么 mac 复制了后,不能在 iPhone 上面粘贴
iphone复制内容怎么粘贴到mac?很多果粉还不会把iphone复制的内容转移到mac上,下文介绍iphone复制内容粘贴到mac教程,一起和小乐哥来了解下吧! iphone复制内容粘贴到mac教程: Handoff是苹果在OS X 10.10 Yosemite系统中新增的一个酷炫的功能,打开这个功能之后,用户可以在Mac上对iPad和iPhone进行操作,比如能够编写iPhone上未完成的邮件,并且可以在Mac上打开iPhone的热点等等。 而在macOS Sierra和iOS10中,苹果将Mac和iOS的无缝衔接提升了一个档次,通用的剪贴板功能允许用户在Mac和iOS设备之间复制和粘贴内容,比如图片和文字等等。 要想建立通用的剪贴板,用户需要确认自己在Mac和iOS设备上登录的是同一个iCloud账户,并且开启两台设备的蓝牙和WiFi功能。下面我们来举例说明。 如果你想要将iPhone上的一张照片复制到Mac上,首先需要选中该照片,然后点击左下角的分享按钮,然后选择拷贝。 在Mac上打开预览,然后点击“文件”-“从剪贴板新建”,这时候你会看到一个照片正在从iPhone复制到Mac的进度条,复制完成之后,你可以点击编辑,然后粘贴到预览。 如果你想将照片从Mac复制到iPhone上,只需要反过来操作即可。另外,如果你没有实现这一功能的话,再次确认Mac和iOS设备上登录的是同一个iCloud账户,然后重启设备,并且确认iCloud设置中的“回到我的Mac”已被选中。
如何使用iOS11从iPad上复制粘贴文件到iPhone上
同时登陆微信,或者登陆相同的id,通讯录,记事本都是自动同步的本回答被提问者采纳
ios label怎么长按复制粘贴
在iOS中下面三个控件,自身就有复制-粘贴的功能:
1、UITextView
2、UITextField
3、UIWebView
UIKit framework提供了几个类和协议方便我们在自己的应用程序中实现剪贴板的功能。
1、UIPasteboard:我们可以向其中写入数据,也可以读取数据
2、UIMenuController:显示一个快捷菜单,用来展示复制、剪贴、粘贴等选择的项。
3、UIResponder中的 canPerformAction:withSender:用于控制哪些命令显示在快捷菜单中。
4、当快捷菜单上的命令点击的时候,UIResponderStandardEditActions将会被调用。
下面这些项能被放置到剪贴板中
1、UIPasteboardTypeListString — 字符串数组, 包含kUTTypeUTF8PlainText
2、UIPasteboardTypeListURL — URL数组,包含kUTTypeURL
3、UIPasteboardTypeListImage — 图形数组, 包含kUTTypePNG 和kUTTypeJPEG
4、UIPasteboardTypeListColor — 颜色数组
剪贴板的类型分为两种:
系统级:使用UIPasteboardNameGeneral和UIPasteboardNameFind,系统级应用程序关闭,或者卸载的数据不会丢失。
应用程序级:通过设置,可以让数据在应用程序关闭之后仍然保存在剪贴板中,但是应用程序卸载之后数据就会失去。我们可用通过pasteboardWithName:create:来创建。
例子如下:
有时候我们可能需要复制UILabel上的文本,或者UIImageView的图片,而UILabel和UIImageView默认是不响应Touch事件的,也无法复制,那么我们就需要自己实现一个可复制的UILabel。新添加一个类继承自UILabel:
@interface UICopyLabel : UILabel
@end
#import "UICopyLabel.h"
@implementation UICopyLabel
@end
为了能接收到事件(能成为第一响应者),我们需要覆盖一个方法:
-(BOOL)canBecomeFirstResponder
{
return YES;
}
还需要针对复制的操作覆盖两个方法:
// 可以响应的方法
-(BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
return (action == @selector(copy:));
}
//针对于响应方法的实现
-(void)copy:(id)sender
{
UIPasteboard *pboard = [UIPasteboard generalPasteboard];
pboard.string = self.text;
}
有了以上三个方法,我们就能处理copy了,当然,在能接收到事件的情况下:
//UILabel默认是不接收事件的,我们需要自己添加touch事件
-(void)attachTapHandler
{
self.userInteractionEnabled = YES; //用户交互的总开关
UITapGestureRecognizer *touch = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)];
touch.numberOfTapsRequired = 2;
[self addGestureRecognizer:touch];
[touch release];
}
//绑定事件
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self)
{
[self attachTapHandler];
}
return self;
}
//同上
-(void)awakeFromNib
{
[super awakeFromNib];
[self attachTapHandler];
}
我们已经可以接收到事件了!由于我在上方将tap数设为2,所以需要双击才能捕获,接下来,我们需要处理这个tap,以便让菜单栏弹出来:
-(void)handleTap:(UIGestureRecognizer*) recognizer
{
[self becomeFirstResponder];
UIMenuItem *copyLink = [[[UIMenuItemalloc] initWithTitle:@"复制"
action:@selector(copy:)]autorelease];
[[UIMenuControllersharedMenuController] setMenuItems:[NSArrayarrayWithObjects:copyLink, nil]];
[[UIMenuControllersharedMenuController] setTargetRect:self.frameinView:self.superview];
[[UIMenuControllersharedMenuController] setMenuVisible:YESanimated: YES];
}
这样一来,一个可复制的UILabel就诞生了!它能处理接收点击、弹出菜单栏、处理copy,这是一个很普通的可复制控件。
接下来我们做一个可复制的UIImageView,创建一个新的viewController,放两个imageView,默认显示不同的图:
然后把上面的代码直接拷过来,改三个地方:
-(BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
return (action == @selector(copy:) || action == @selector(paste:));
}
-(void)copy:(id)sender
{
UIPasteboard *pboard = [UIPasteboard generalPasteboard];
pboard.image = self.image;
}
-(void)paste:(id)sender
{
UIPasteboard *pboard = [UIPasteboard generalPasteboard];
self.image = pboard.image;
}
UIPasteboard有系统级别和应用级别两种类型,所以不仅可以在应用程序内通信,还能在应用程序间通信,比如我复制一个url,然后打开safari,粘贴到地址栏去,而我们可以在应用程序间通信、共享数据。
在PasteBoardWrite里面点“写入”后把textField中的文本写入粘贴板,然后切换到PasteBoardRead的时候显示出来。如果我们的粘贴板只想给“自己人”用的话,就不能用系统的通用粘贴板,需要我们自己创建一个:
//需要提供一个唯一的名字,一般使用倒写的域名:com.mycompany.myapp.pboard
//后面的参数表示,如果不存在,是否创建一个
UIPasteboard *pb = [UIPasteboard pasteboardWithName:@"testBoard" create:YES];
使用这个粘贴板,我们可以把文本存进去,然后在另一个app里面读出来,一些常用的类型已经被设置为属性了:
除此之外,如果是能够转换成plist的数据类型(NSString, NSArray, NSDictionary, NSDate, NSNumber 和 NSURL),我们可以调用setValue:forPasteboardType:方法去存储数据,其他类型只能调用setData:forPasteboardType:方法(plist数据类型也可使用),类似于这样:
//存储数据
NSDictionary *dict = [NSDictionary dictionaryWithObject:textField.text forKey:@"content"];
NSData *dictData = [NSKeyedArchiver archivedDataWithRootObject:dict];
[pb setData:dictData forPasteboardType:@"myType"];
//获取就类似于这样:
UIPasteboard *pb = [UIPasteboard pasteboardWithName:@"testBoard" create:YES];
NSDictionary *dict = [NSKeyedUnarchiver unarchiveObjectWithData:[pb dataForPasteboardType:@"myType"]];
caption.text = [dict objectForKey:@"content"];
上面提到了一个PasteboardType,这是一个统一类型标识符(Uniform Type Identifier UTI),能帮助app获取自己能处理的数据。比如你只能处理文本的粘贴,那给你一个UIImage显然是无用的。你可以使用公用的UTI,也可以使用任意字符,苹果建议使用倒写的域名加上类型名:com.myCompany.myApp.myType。
有没有人觉得ios的复制粘贴好难用
话说大家是否觉得在iOS设备上发文时,复制、剪切、粘贴这些常用的功能,虽然可以通过按住选中的文字,然后使用剪贴簿的功能,不过这样键盘的收缩切换,你一定也觉得麻烦吧!再者,一般的习惯性用语、Email这一类,每次使用都必须一一输入,长时间下来还真的挺令人困扰。这些小问题,也曾困扰过你吗!?还是你也曾幻想有个快捷键盘的操作功能呢!? 「KBShortcuts」这是一款快捷键盘插件,通过按住「空白键」后,再将手指滑至「任何键」上,就能启动意想不到的快速发文功能,实现像在PC电脑上剪切、复制、粘贴快捷按键Ctrl+C,Ctrl+V一样便利。 注意:按下空格键后请不要松开手,即手不要离开屏幕,直接选择字母。 主要功能: 复制:按住空格键再移到字母C上面放开,就实现了一次拷贝 粘贴:按住空格键再移到字母V上面放开,就实现了一次粘贴 剪切:按住空格键再移到字母X上面放开,就实现了一次剪切 全选:按住空格键再移到字母A上面放开,就实现了一次全选 支持字符的快速跳转,如到行首行尾、段首段尾等 还有一些特别的快捷输入,如移到@字符上就可以快速输入设定的邮箱地址 另外还可以设置0~9这几个数字字符的快捷输入 版本 1.2 更新内容 - 增加同义词替换功能 - 修复定义功能及其他错误问题 KBShortCuts 设置