一般的iPhone粘贴板是否会包含多个项目?

时间:2009-07-27 01:49:36

标签: iphone cocoa-touch pasteboard uipasteboard generalpasteboard

pasteboard.numberOfItems(在下面的代码中)是否会大于1?用户将如何导致这种情况发生?

UIPasteboard *pasteBoard = [UIPasteboard generalPasteboard];
pasteBoard.numberOfItems

请注意,我不是在问一个粘贴板项目是否可以有多种表示类型。他们可以说清楚。

更新:我理解,通过编程可以在粘贴板中放置多个项目(使用addItems作为Kevin Ballard指出,或者将items属性设置为包含多个项目的数组一本字典)。但是,用户可以使用任何内置应用程序执行此操作吗?我想人们可以轻松编写一个应用程序,在粘贴板中放置多个项目(因此,为了使我的应用程序健壮,它应该处理这种情况)。

3 个答案:

答案 0 :(得分:4)

UIPasteboard上有一个-addItems:方法,所以我认为很明显可以有多个项目。

答案 1 :(得分:3)

不是Apple提供的应用程序。据我所知,第三方应用完全可以添加多个项目。

编辑:第二个想法,我可能在测试我的应用时有几次多项,但我没有确定从哪里,或者它是否是Apple应用程序。在任何一种情况下,我都会为它写一个测试。我的应用程序 - 现在 - 仅查看第一项,我在测试中从未遇到内置应用程序的问题。

答案 2 :(得分:2)

内置的照片应用可让您在常规粘贴板上放置多张照片。只需使用“分享”按钮,选择几张照片,然后按“复制”。

然后,普通的粘贴板将每张照片作为具有两个表示的项目:“public.jpeg”和“public.utf8-plain-text”。第二种表示(文本)似乎是文件名,但在这种情况下,照片总是返回“图像”加上一个序号(即image1.jpg,image2.jpg等)。

此外,用户可以使用剪贴板应用程序(其中一些存在于App Store中)将多个项目放置在常规粘贴板中。我目前正在构建剪贴板共享应用程序。