【问题标题】:How to copy NSDate to UIPasteboard?如何将 NSDate 复制到 UIPasteboard?
【发布时间】:2012-07-07 10:22:37
【问题描述】:

根据我必须使用的文档

- (void)setValue:(id)value forPasteboardType:(NSString *)pasteboardType

但我找不到 NSDate 的 UTI。我想复制原始 NSDate 本身以及格式化的字符串表示形式。

除了复制一个字符串之外,还有其他方法吗?

【问题讨论】:

  • 为什么要将 NSDate 添加到粘贴板,您想要实现的行为是什么?
  • 复制一个 NSDate,然后在其他位置粘贴回去。日历的东西。
  • 您的应用程序中的另一个位置?
  • 是的。只有一个 NSDate 到另一个位置。但我想让它保持通用,以便其他应用程序也可以使用该 NSDate。
  • 您是否尝试过使用 [[UIPasteboard generalPasteboard] setData: forPasteboardType:]?

标签: ios copy-paste uipasteboard


【解决方案1】:

Apple documentation 在如何引用属性列表对象(例如 NSDate 对象)方面似乎相当模糊!

查看 MobileCoreServices 框架中的 UTCoreTypes.h,我想知道您是否可以使用 kUTTypeItem,因为它是基本类型 - 事实上 Apple 将其描述为“大多数事物的基本类型”?我也可能会尝试 kUTTypeContent,因为它特别提到了粘贴板数据。

编辑

看起来好像其他人也有同样的问题 - 请参阅 previous thread here 并注意有关使用 NSPropertyListSerialization 的答案,虽然有点痛苦,但可能会让您将日期对象作为 plist 取回。

【讨论】:

  • 这些都不起作用。我最终得到了从粘贴板返回的 NSData 对象。
  • 即使使用 valueForPasteboardType 而不是 dataForPasteboardtype?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-18
  • 1970-01-01
相关资源
最近更新 更多