gpt4 book ai didi

ios - MSMessagesAppViewController 没有正确调用 didSelect()?

转载 作者:可可西里 更新时间:2023-11-01 01:25:45 25 4
gpt4 key购买 nike

问题

在 iOS 10.2 上

didSelect() 仅在第一次选择消息时调用,但不会在第二次选择同一消息时调用(在第一次选择发生后)。例如:

  1. 在我的消息应用程序处于事件状态时单击收到的 MSMessage Message_A,didSelect() 方法被正确调用并且应用程序转移到扩展 View 。
  2. 点击向下箭头可将应用恢复为压缩 View 。
  3. 再次单击同一条消息 - Message_A,这次没有触发 didSelect()。

苹果的话

func didSelect(MSMessage, conversation: MSConversation)

Invoked after the system updates the conversation’s selectedMessage property in response to the user selecting a message object in the transcript.

我的想法

似乎 selectedMessage 在我们第二次单击该消息时没有更新(因为它已经在第一次单击时设置),因此没有调用 didSelect()。

问题

  • 我做错了吗?
  • 有没有办法变通并在选择发生时调用 didSelect()? selectedMessage 是只读的...
  • 或者是否有办法在用户打开(点击)消息后使消息从对话中立即过期(消失)?

最佳答案

恐怕这是一个错误,有一个 open radar for that (或者它是“按设计”完成的,考虑到自提交问题以来已经过去了多长时间)。

然而,当消息被选中时,iMessage 的扩展试图移动到扩展模式并调用 willTransition(to presentationStyle:) 委托(delegate)方法(看起来是 another bug 或 cool-thing-by -设计)。通过检查扩展 Controller 是否已经显示并调整您的自定义标志,您可能会成功,尽管在某些情况下它并不可靠。

关于ios - MSMessagesAppViewController 没有正确调用 didSelect()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41647350/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com