从iMessage Extension App的第二个视图使用MSMessage发送消息

时间:2018-10-14 23:24:13

标签: xcode imessage-extension msmessage

我设计了一个iMessage扩展应用程序,其中的初始/第一个视图具有一个“输入”按钮,当我们单击“输入”时,它将打开另一个具有一个“发送”按钮的第二个视图。单击“发送”时,我想使用MSMessage发送消息。我按下“发送”时的代码是:

let layout = MSMessageTemplateLayout()
layout.image = UIImage(named: "demo.png")!
layout.caption = "I am sending you this image"

let message = MSMessage()
message.layout = layout

activeConversation.insert(message, correctionHandler:nil)

但是,当我单击“发送”时,不会执行任何操作。当我将相同的代码粘贴到被按下的“输入”按钮中时,它可以正常工作。有没有办法即使从第二个视图(即在我按下“发送”按钮的情况下)也可以使此代码起作用?

1 个答案:

答案 0 :(得分:0)

您需要在某个地方致电MSMessagesAppViewController.dismiss(),以关闭扩展名并将焦点重新放置到消息提示框上。您引用的代码没有显示出来。

您所做的所有其他事情看起来都很好,只是缺少最后一步。

在我的应用程序中,所有其他VC都有一个指向原始MSMessagesAppViewController实例的属性,因此它们可以调用sendMessage函数。