我嘗試了不同的方法來顯示帶有文本的 URL 圖示,但沒有成功。這是代碼及其輸出片段
示例 1:
let text = "I am text"
let myWebsite = URL(string:"https://www.youtube.com/")
let shareAll = [text, myWebsite] as [Any]
let activityViewController = UIActivityViewController(activityItems: shareAll, applicationActivities: nil)
self.present(activityViewController, animated: true, completion: nil)
輸出 1: UIActivity 視圖 訊息視圖
示例 2:
let myWebsite = URL(string:"https://www.youtube.com/")
let shareAll = [myWebsite] as [Any]
let activityViewController = UIActivityViewController(activityItems: shareAll, applicationActivities: nil)
self.present(activityViewController, animated: true, completion: nil)
輸出 2:
界面活動視圖
必需: 我想要示例 1 的輸出 2 中的 URL 圖示。
uj5u.com熱心網友回復:
共享資料和顯示資料之間存在差異- 我認為在您的情況下,顯示即將共享的資料。
我可能是錯的,但如果不是,您實際上可以共享資料 - 在這種情況下是 aUIImage和文本 - 但希望顯示即將共享的內容。不久前我遇到了這個問題。這是我的代碼。看看它是否可以幫助您 - 基本上您需要將元資料添加到UIActivityViewController委托中。
func activityViewControllerLinkMetadata(_ activityViewController: UIActivityViewController) -> LPLinkMetadata? {
let shareImage = preview.uiImage.adjustedForShareSheetPreviewIconProvider()
let imageProvider = NSItemProvider(object: shareImage)
let metadata = LPLinkMetadata()
metadata.imageProvider = imageProvider
metadata.title = "Title"
return metadata
}
調整shareImage和title需要。
編輯
我正在使用我的代碼并且不完整。adjustedForShareSheetPreviewIconProvider()是 的一部分UIImage,因此,它假設了這一點。在我的代碼中,我實際上是呼叫 aGLKView來回傳它UIImage,然后在元資料中以這種方式使用它。
因此,如果您的影像是作為圖示從 URL 回傳的內容并且是(或可以轉換為) a UIImage,只需將其添加到元資料中,就像我上面的代碼一樣。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/326313.html
