将图片发送到iMovie iPhone应用程序

时间:2012-12-09 19:02:10

标签: iphone ios

iPhone的iPhoto应用程序具有一项功能(它是“共享”选项的一部分),可让您在iMovie iPhone应用程序中发送一张或多张照片。

有谁知道这样的功能(从其他应用程序向iMovie应用程序发送照片)是如何实现的?它似乎使用URL架构,但我找不到任何关于它的文档。

2 个答案:

答案 0 :(得分:0)

首先,您需要要共享的图像的NSURL。如果您的图像仅在内存中,则可以将图像保存在某处,然后使用该URL。

NSURL *imageURL = /* URL of your image */

现在使用以下方法创建一个UIDocumentInteractionController:

UIDocumentInteractionController *documentInteractionController = 
     [UIDocumentInteractionController interactionControllerWithURL:imageURL];

就是这样。您可以继续使用以下任何方法呈现documentInteractionController:

– presentOptionsMenuFromRect:inView:animated:
– presentOptionsMenuFromBarButtonItem:animated:
– presentOpenInMenuFromRect:inView:animated:
– presentOpenInMenuFromBarButtonItem:animated:
– dismissMenuAnimated:

所以现在会出现一个popover,列出愿意使用您图片的所有应用(如果已安装,则包括iMovie)。

如果您想了解有关UIDocumentInteractionController的更多信息,请访问: http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIDocumentInteractionController_class/Reference/Reference.html

答案 1 :(得分:0)

使用UIDocumentInteractionController

直接来自doc:

  

要提示用户仅在另一个应用中打开该文件,请调用 presentOpenInMenuFromRect:inView:animated: presentOpenInMenuFromBarButtonItem:animated:方法。

  

要使用一组选项提示用户,包括在其他应用中打开文件的选项,请调用 presentOptionsMenuFromRect:inView:animated: presentOptionsMenuFromBarButtonItem:animated:方法。

以下是如何做到这一点:

  1. 注册第一个应用,以便能够处理首选的图像文件类型
  2. 第二个应用中,从UIDocumentInteractionController实现我所述的方法。因此,它会提示用户将照片发送到第一个应用。 Doc为此。
  3. 第一个应用中,实施此方法:

    -(BOOL)application:openURL:sourceApplication:annotation:

    打开从第一个应用传输的图片。图片将存储在Documents/Inbox。然后,您现在可以在第一个应用程序中愉快地使用该图片。