在SLComposeServiceViewController中更改预览图像

我创build了一个Safari共享扩展,其中我从当前URL获取特定图像。 这一部分已经完成,但现在我试图用我从URL中挖出的那个replaceSLComposeServiceViewController上的预览图像。 我似乎无法find一种方法来更改由SLComposeServiceViewController自动生成的预览图像

在这里输入图像说明

我怎样才能改变这个图像?

我试过寻找inputItems属性,但只能看到那里的URL。

 extension NSExtensionContext { for item in self.inputItems { if let extenstionItem = item as? NSExtensionItem { print("attachments = \(extenstionItem.attachments)") } } } 

attachments = Optional([<NSItemProvider: 0x12d513e70> {types = ( "public.url" )}])

我希望我可以改变这个图像,而不必创build自己的视图,因为这是我需要对默认的唯一更改。

即使能够隐藏在那里默认的图像将是有帮助的!

我find了实现这个目标的方法。 您可以重载loadPreviewView()子类中的loadPreviewView() ,并返回UIImageView(或任何视图)与图像。 要在同一个运行时期间对其进行更新,请在该类中保留对其的引用。

 override func loadPreviewView() -> UIView! { imagePreviewView = UIImageView(image: UIImage(named: "imageName")) return imagePreviewView }