Поле ввода MFMessageComposeView остается пустым при запуске с MSMessage - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь использовать MFMessageComposeViewController в своем расширении iMessage в .expanded Режим презентации. При инициализации контроллера с помощью объекта MSMessage в методе didTransition(to:) поле ввода остается пустым. Я понятия не имею, почему.

Я пробовал разные сценарии, с MSMessageTemplateLayout() или MSMessageLiveLayout(), но это ничего не меняет. При использовании атрибута messageComposeController!.body вместо инициализации представления с MSMessage он работает.

override func didTransition(to presentationStyle: MSMessagesAppPresentationStyle) {

    if (presentationStyle == .expanded) {

        let layout = MSMessageTemplateLayout()
        let message = MSMessage()

        layout.caption = "Dummy Text"
        layout.image = UIImage(named: "dummy.png")

        let urlString = "https://anyurl.com/"
        message.url = URL(string: urlString)

        message.summaryText = "blabla"
        message.layout = layout

        let messageComposeController = MFMessageComposeViewController()
        messageComposeController!.messageComposeDelegate = self
        messageComposeController!.message = message
        self.present(messageComposeController!, animated: true, completion: nil)

    }
}

Отладка показала, что объект MSMessage не nil при использовании его в messageComposeController. У кого-нибудь есть клей?

Я полностью потерян и мне нужна помощь с этим

...