4

我创建了一个带有自定义 UI(不使用 SLComposeServiceViewController)的 iOS 共享扩展,并且一切正常。

调用扩展后,它会获取一个共享 URL 或文本并发送它。这就是它所做的一切,而且效果很好。

自定义 UI 很简单。一个图像视图显示一个图形,指示它正在发送,然后在完成后更改为“已发送”。然后这淡出。

问题是完成后,扩展似乎消失了,但我无法再控制主机应用程序了。就好像一个不可见的窗口或视图位于一切之上。(例如,Safari 中的图像旋转器仍在旋转,但我无法滚动或点击链接或按钮等)

共享完成后我[self.extensionContext completeRequestReturningItems:nil completionHandler:nil];会打电话,据我所知,这应该会关闭我的 UI。我也试过[self.view removeFromSuperview]没有任何运气。

发生在模拟器和设备上。有什么我想念的吗?

编辑:这是我为测试共享而构建的一个简单应用程序的视图层次结构在共享前后在 Reveal 中的样子。该应用程序有两个按钮:分享文本和分享网址,每个按钮都会显示一个标准的分享表。

http://joshh.is/1utYnKS

http://joshh.is/1rdVo34

4

1 回答 1

4

好吧,我不知道为什么我花了 10 个小时才意识到我没有在我的beginRequestWithExtensionContext:方法中包含对 super 的调用。

我不知道导致了哪些其他问题,但它肯定导致了我上面的问题。

于 2014-10-06T22:41:59.670 回答