使应用程序显示在共享面板中以接受来自其他应用程序的选定文本

时间:2016-06-11 06:48:53

标签: ios iphone swift uiactivityviewcontroller

我在iOS中编写处理文本的应用程序。通常用户可以通过文本区域输入自己的文本,但我也希望用户能够突出显示其他应用程序中的文本(例如邮件,网站等),并允许用户通过选择和共享面板发送文本会出现吗?我可以在iOS中这样做,如果是这样的话?这是否与UIActivityViewController相反?

我手机上的一个例子。我在一个网站上,看到有趣的短语,我选择它,然后从文本高亮显示共享选项发送到Notes。 Notes是Apple应用程序,但我也可以将其发送到其他第三方应用程序,如Twitter或WhatsApp。我希望我的应用也出现在此共享列表中,并能够接收和处理文本。

2 个答案:

答案 0 :(得分:1)

您需要的是向应用添加带有Share扩展类型的应用扩展程序。您可以在此处详细了解应用扩展程序,以便开始使用。

https://developer.apple.com/library/mac/documentation/General/Conceptual/ExtensibilityPG/Share.html#//apple_ref/doc/uid/TP40014214-CH12-SW1

答案 1 :(得分:0)

应用程序通常不可能在iOS中直接相互通信,当然也不可能让一个应用程序突出显示另一个应用程序中的文本。苹果故意"沙盒"应用程序,以防止一个人干扰另一个。

如果您希望其他应用中的文字显示在您的应用中,则用户需要手动复制并粘贴文字。

Apple网站上提供了有关应用程序间通信的更多详细信息:https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/Inter-AppCommunication/Inter-AppCommunication.html