1

我设计了一个 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)

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

4

1 回答 1

0

在某个地方,您需要一个呼叫来MSMessagesAppViewController.dismiss()关闭扩展程序并将焦点放回消息气泡。您引用的代码没有显示这一点。

您正在做的其他一切看起来都很好,只是缺少最后一步。

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

于 2019-06-23T12:53:22.170 回答