Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/120.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Swift-完成游戏中心成就_Ios_Xcode_Swift_Game Center_Achievements - Fatal编程技术网

Ios Swift-完成游戏中心成就

Ios Swift-完成游戏中心成就,ios,xcode,swift,game-center,achievements,Ios,Xcode,Swift,Game Center,Achievements,我有一个“无止境”的游戏,用户必须获得尽可能高的分数。我已经取得了一些成就,因为当他们达到30分、60分、90分等。但是,当用户达到这些分数时,不会显示任何横幅表明他们已经完成了成就,也不会在游戏中心显示为已完成 我该怎么做 这是我的代码: func checkAchievements() { var identifier : String? = nil var percentComplete : Double = 0 switch(score) { ca

我有一个“无止境”的游戏,用户必须获得尽可能高的分数。我已经取得了一些成就,因为当他们达到30分、60分、90分等。但是,当用户达到这些分数时,不会显示任何横幅表明他们已经完成了成就,也不会在游戏中心显示为已完成

我该怎么做

这是我的代码:

func checkAchievements() {
    var identifier : String? = nil
    var percentComplete : Double = 0
    switch(score)
    {
    case 30:
        identifier = "30"
        percentComplete = 100.0
    case 60:
        identifier = "60"
        percentComplete = 100.0
    case 90:
        identifier = "90"
        percentComplete = 100.0
    case 120:
        identifier = "120"
        percentComplete = 100.0
    case 150:
        identifier = "150"
        percentComplete = 100.0
    default:
        identifier = nil
    }
    if identifier != nil {
        let achievement = GKAchievement(identifier: identifier)
        achievement.showsCompletionBanner = true
        achievement.percentComplete = percentComplete
    }
}

我从未使用过GK模块,但是当您实例化了GK成就对象时,我没有看到您调用Game Center来报告/记录它。其中是Achization.ReportAchizationTwithCompletionHandler:

我从未使用过GK模块,但尽管您实例化了GK成就对象,但我看不到您调用Game Center来报告/记录它。其中是Achization.ReportAchizationTwithCompletionHandler:

Xcode似乎无法识别
ReportAchieventWithCompletionHandler:
。我键入
成就。
并开始键入
ReportAchievementTwithCompletionHandler:
,但它似乎不在那里???实例方法在iOS7中被弃用。看起来您应该使用类方法reportExcreations:withCompletionHandler:并在第一个参数中传递您的Achization对象(如果您只有一个要报告的项目,那么从外观上看,它是一个包含一个项目的数组)。也许可以尝试
gkAchization.reportExcreations([Achization],withCompletionHandler:nil)
?Xcode似乎无法识别
reportAchievementWithCompletionHandler:
。我键入
成就。
并开始键入
ReportAchievementTwithCompletionHandler:
,但它似乎不在那里???实例方法在iOS7中被弃用。看起来您应该使用类方法reportExcreations:withCompletionHandler:并在第一个参数中传递您的成就对象(如果您只有一个要报告的项目,则根据它的外观将其作为一个项目的数组)。也许可以尝试
gkAcreations.reportExcreations([Acreaction],withCompletionHandler:nil)