一小段代码Swift错误:无法转换为PFUserResultBlock

时间:2015-10-15 00:51:06

标签: ios swift

我收到此错误"无法转换为PFUserResultBlock"在Xcode-Swift中的这段代码中:

error in xcode

有没有人可能知道我为什么会收到此错误?

2 个答案:

答案 0 :(得分:1)

匹配typedef

PFUserResultBlock
typedef void (^PFUserResultBlock)(PFUser *PF_NULLABLE_S user, NSError *PF_NULLABLE_S error);

请将您的代码更改为

PFTwitterUtils.logInWithBlock { (user: PFUser?, error: NSError?) -> Void in

以便尊重PF_NULLABLE_S注释。

答案 1 :(得分:0)

谢谢大家,特别是丹尼尔。 Daniel的解决方案对我有用。 另外,在上一张我第一次提出问题的图片中,我手动输入了所有内容。当使用Xcode的输入自动完成功能时,Daniel建议显示并编写代码。 我有一张照片,说明将来有人会看这篇文章的情况: twitter login in xcode 7

按照Hayley的建议:

import UIKit
import Parse
import ParseTwitterUtils

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

//    override func didReceiveMemoryWarning() {
//        super.didReceiveMemoryWarning()
//    
// Dispose of any resources that can be recreated.
//    }

@IBAction func loginWithTwitterTapped(sender: AnyObject) {

     PFTwitterUtils.initializeWithConsumerKey("XWvwtGCsXKkz3yAjKJpCv6mOA", consumerSecret:"gmSVhubFvVl1dILSxfRiCCkTb9PfPAcoCyN3i2SS6JgD5up3cz")

     PFTwitterUtils.logInWithBlock { (user:PFUser?, error:NSError?) -> Void in

        if user == nil {
            print(error)
        } else {
            print("WE DID IT")
        }
    }   
}

}