问题标签 [uidocumentinteraction]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2384 浏览

ios - ios/Objective C - UIDocumentInteractionController - 'Open In' 方法总是返回 NO

我希望有人可以帮助我解决 UIDocumentInteractionController 遇到的一个非常令人沮丧的问题。

我需要调用“presentOpenInMenuFromRect”方法,以允许用户在另一个应用程序中打开文件。在这个阶段,我只是在做一个概念验证,所以我只是使用一个非常基本的文件类型来进行测试。

我已经使用下面的代码设置了我的 UiDocumentInteractionController,并验证了文件路径 URL 是正确的,因为我可以成功调用 presentPreviewAnimated 方法,并且文档确实在预览模式下可以正常打开。

我遇到的问题是,无论我使用什么文件类型,“presentOpenInMenuFromRect”总是返回 NO。到目前为止,我使用了以下常见的文件类型,但都无济于事:jpg、png、pdf、txt、rtf 和 html。

如果有人遇到此问题,我将不胜感激。当然,设备至少应该将这些文件中的一个识别为具有关联的应用程序(并且它预览正常的事实实际上并不能证明这一点?)我想知道我在做一些更根本错误的事情吗?我在 iPhone btw 上调试,所以这不是模拟器的怪癖。

任何建议都会非常非常欢迎!提前致谢。

0 投票
1 回答
1051 浏览

iphone - UIDocumentInteractionController Open In menu 使工具栏项在 iPhone 中消失

我有一个 UIToolbar 添加到视图中,并且工具栏有几个 UIBarButtonItem。其中一个按钮将调出 UIDocumentInteractionController Open In 菜单。在 iPhone 中,Open In 菜单的工作方式类似于 UIActionSheet,它将从屏幕底部显示并禁用除自身之外的所有其他按钮(屏幕的其他部分将被浅灰色阴影遮盖,你知道我的意思) .

我的问题是,当 Open In 菜单出现时,UIToolBar 中的所有按钮都消失了,有点像 iOS 的“自动隐藏”。关闭“打开方式”菜单后,按钮将返回。我想要的只是在打开“打开方式”菜单时保持按钮可见。

这个问题只出现在 iOS6(当然还有 iPhone)中,因为在 iOS5 中,Open In 菜单有不同的风格。我不太确定这种行为是否可以改变。然而,Adobe PDF 阅读器应用程序似乎在做和我一样的事情,但工具栏项目永远不会消失。

我用来调出 Open In 菜单的代码是这样的:

self.topBar 是我之前提到的工具栏,我也尝试过 self.view、self.view.window 等,但都没有奏效。

我错过了什么吗?还是有一些解决方法?

根据需要添加更多代码:

在 XIB 文件中添加了 UIToolbar,我使用 UIButton 自定义了一个 UIBarbuttonItem,如下所示:

然后我将 tItem 添加到 UIToolbar 的 items 数组中:

“doSth”方法只做一件事,只需初始化一个 UIDocumentInteractionController 并显示 Open In 菜单:

当然,工具栏中还有更多条形按钮项。因此,当显示“打开方式”菜单时,所有按钮都被“隐藏”了。我认为Apple可能会通过设计来做到这一点,但我想知道是否有一些解决方法可以改变这种行为。

0 投票
1 回答
2624 浏览

ios - iOS 6 共享像消息,而不像照片(UIActivityViewController 和 UIDocumentInteractionController)

在 iOS 6 中,点击照片应用程序中的操作按钮会显示标准的 UIActivityViewController:

照片中的 UIActivityViewController

从消息中执行相同操作会提供一组不同的选项。在我看来,这就像它使用 UIDocumentInteractionController api 来拉取所有说它们可以处理图像的应用程序。

UIAcitivtyViewController? 来自消息

我的问题是双重的:

  1. 如何进入消息操作菜单?Tumblr 和 Halftone,仅举几例,已经做到了……我似乎找不到文档。

  2. 如何显示消息样式的操作菜单?当我展示 UIActivityViewController 时,它没有这些选项......只有标准集 facebook/twitter/copy/print/save to camera roll/etc。

谢谢!

0 投票
2 回答
2045 浏览

ios - iOS 6 - 能够从 URL 保存 .pdf,能够在 WebView 中显示它,不能将它移动到 iBooks

这就是我想要做的:

  1. 从外部 URL 获取 .pdf
  2. 保存到我的本地磁盘
  3. 在 WebView 中显示它
  4. 允许用户将 .pdf 移动到另一个可以阅读 .pdf 的应用

从 1 到 3 的所有内容都可以正常工作。但是没有任何东西被移动/共享到/与其他应用程序。我不明白我做错了什么。这就是我正在做的事情。

我如何将 pdf 保存在 Documents 文件夹 (viewDidLoad) 中:

在我的 viewDidLoad() 函数中,我创建了一个按钮,允许用户打开可以读取 .pdf 文件的应用程序列表:

这是我的 show_Button 函数:

当我在我的设备上尝试这个时,一切正常,直到我点击列表中的一个图标(即 iBooks 之一)。然后应用程序关闭(它不会崩溃,它只是关闭)。

这是我在 show_Button 函数中放置的两个日志的控制台打印内容:

有人想让我明白我做错了什么吗?我正在使用 Xcode 4.6。我使用第三方软件浏览了我的 iPhone 应用程序文件系统,文件“MyPDF.pdf”实际上位于“文档”文件夹中,这很清楚,因为 WebView 已正确填充。

0 投票
1 回答
54 浏览

ios - 如何在我们的应用程序中从另一个应用程序读取 pdf?

我想从支持 pdf(iBook 或其他)的各种应用程序中读取 pdf,并且我想在我们的应用程序中浏览该 pdf。

我怎样才能做到这一点?

请帮帮我..

0 投票
1 回答
159 浏览

ios - 强制“在...中打开”选择

我目前的代码如下所示:

}

这会在屏幕左上角生成一个打开的主题气泡。我可以移动到出现这个气泡的地方吗?或者更好的是我可以在这个气泡上强制一个触摸事件,这样用户就别无选择,主题演讲会自动打开?我不能为此使用 URL 参考方案,因为 keynote 不支持这一点。

谢谢

0 投票
1 回答
490 浏览

ios - 文档交互控制器

我的应用程序应该能够读取和编辑 PDF、DOC 和 TXT 文件格式,因此我决定使用另一个应用程序(让我将其命名为 app2)从我的应用程序中打开和编辑文件。

但是当我将文件保存在 app2 中时,文件会保存到 app2 的沙箱中。是否可以让 app2 将文件保存到我的应用程序的沙箱中?

0 投票
0 回答
654 浏览

ios - UIDocumentInteractionController 按钮单击

我的应用程序最初有一个标准操作表,显示正在查看的 PDF 的电子邮件和打印选项。我使用 Google Analytics 跟踪了这些事件。

我现在用 UIDocumentInteractionController 替换了操作表,以允许在外部应用程序中打开 PDF。这很好用,但是,似乎没有办法为我的 Google Analytics 跟踪电子邮件和打印事件。我可以轻松跟踪使用打开的应用程序

似乎没有可以用来跟踪电子邮件、打印、复制等的等效功能。有谁知道我如何确定这些按钮是否被点击,或者确定是否触发了这些特定事件之一?

0 投票
1 回答
858 浏览

iphone - UIDocumentInteractionController 在 iOS 6 上不起作用

我需要将文件从一个应用程序发送到另一个应用程序。我使用UIDocumentInteractionController来复制文件。

这是我在 SendingApp 中实现UIDocumentInterationControllerViewController代码。

docController 是财产。ViewController实现UIDocumentInteractionControllerDelegate

ReceiverApp 设置为处理此扩展名的文件。

我的 ReceiverAppInfo.plist

在 ReceiverAppDelegate 我使用

处理接收文件的打开。

所以问题是这段代码在 iOS 5.1 上完美运行,在 iOS 6 上不起作用。 UIDocumentInteractionController OpenIn 菜单出现并显示我的 ReceiverApp 但如果您选择应用程序,它不会做任何事情。我查看了控制台,发现 iPhone Simulator 6.1 尝试将文件复制到一个目录,而 Simulator 5.1 复制到另一个目录。

iPhone模拟器 6.1

iPhone模拟器 5.1

有人有这样的问题吗?有人知道该怎么做吗?

0 投票
1 回答
808 浏览

iphone - iOS 注册 .p12 文件类型 (cfbundledocumenttypes)

我想在我的应用程序上阅读将发送给用户电子邮件的 .p12 文件。

但是 .p12 文件不会出现“打开方式”选项。

我尝试了 public.data,我可以在所有文件中看到“打开”选项(我尝试了图像、pdf、html 文件),除了 .p12 文件。

为什么我看不到 .p12 文件的“打开方式”选项?