3

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

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

请注意,我不是在询问单个粘贴板项目是否可以具有多种表示类型。他们能做到这一点很清楚。

更新:我知道以编程方式可以在粘贴板中放置多个项目(使用凯文巴拉德指出的 addItems ,或者通过将 items 属性设置为包含多个字典的数组)。但是用户可以使用任何内置应用程序来做到这一点吗?我想人们可以很容易地编写一个在粘贴板中放置多个项目的应用程序(因此,为了使我的应用程序健壮,它应该能够处理这种情况)。

4

3 回答 3

4

UIPasteboard 上有一个-addItems:方法,所以我认为很清楚当然可以有多个项目。

于 2009-07-27T01:59:58.567 回答
3

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

编辑:再想一想,我在测试我的应用程序时可能有好几次,但我没有确定从哪里开始,或者它是否是 Apple 应用程序。无论哪种情况,我都会为它编写一个测试。我的应用程序——现在——只查看第一项,我从来没有在测试中遇到过内置应用程序的问题。

于 2009-07-27T02:09:47.200 回答
2

内置的照片应用程序允许您在普通粘贴板上放置多张照片。只需使用“分享”按钮,选择几张照片,然后按“复制”。

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

此外,用户可以使用剪贴板应用程序(应用商店中有几个)将多个项目放置在通用粘贴板中。我目前正在构建一个剪贴板共享应用程序。

于 2009-08-17T20:06:51.757 回答