ユーザーが相互に写真をやり取りする iMessage 拡張機能を作成しています。両者は、お互いから受け取った画像にアクセスし、それを自分の側で使用できる必要があります。たとえば、ユーザー 1 が子犬の写真をユーザー 2 に送信した場合、メッセージ レイアウトのイメージ プロパティは子犬のものになります。USER 2 がそのメッセージをタップすると、子犬が画面上の画像ビューにロードされます。これまでのところ、私はこれをどのように行うかわかりません。
ここで、レイアウト イメージを子犬のイメージに設定します。
@IBAction func sendPicturePressed(_ sender: AnyObject) {
if chosenImage.image != nil {
let session = MSSession()
let message = MSMessage(session: session)
let conversation = self.activeConversation
let components = URLComponents()
let layout = MSMessageTemplateLayout()
let image = chosenImage.image
layout.image = image
message.layout = layout
message.url = components.url!
conversation?.insert(message, completionHandler: { (error) in
self.dismiss()
})
}
}
2 番目のユーザーが子犬をタップしたときに、画面上の画像ビューを子犬に設定したいと考えています。正確な方法はわかりませんが、私がやりたいことは次のとおりです。
override func willBecomeActive(with conversation: MSConversation) {
imageView.image = conversation.selectedMessage.layout.image
//There is no image property to access this like I've provided, that's just what I'm trying to accomplish.
}