无法在Facebook shareDialog中将“ ViewController.Type”转换为“ UIViewController”

时间:2018-09-25 09:41:17

标签: swift

我认为这在Facebook swift文档中已经过时,并且出现了错误。我修复了第一行错误,但在viewcontroller行中却给出了错误

我遇到此错误

  

无法将类型“ ViewController.Type”的值转换为预期值   参数类型'UIViewController'

请有人修复。

import FacebookShare

    let content = LinkShareContent(url: 
    NSURL("https://developers.facebook.com")) //Fixed :- let content = LinkShareContent(url: URL(string: "https://developers.facebook.com")!)


try ShareDialog.show(from: myViewController, content: content)  //Error :- Cannot convert value of type 'ViewController.Type' to expected argument type 'UIViewController'

1 个答案:

答案 0 :(得分:1)

您似乎已经通过了课程,而不是课程的实例。您需要传递myViewController(当然应该是UIViewController的子类)的实例

try ShareDialog.show(from: myViewController(), content: content)

注意::您应该使用UpperCamelCase作为类名-MyViewController。当前,它看起来是一个实例变量。从API Design Guidelines

  

大小写约定。类型和协议的名称为   UpperCamelCase。其他所有东西都是LowerCamelCase。