0

かなり厄介な問題があります。実績のロックを解除すると、それに関する通知が表示されます。のときにトリガーされachievement.completed == YESます。シミュレーターでは、これで問題ありませんachievement.completedtrue通知が表示されます。ただし、どのデバイスでもこれはfalseあり、通知は表示されません! 私は同じコードを使用していますが、何も変更されていません#ifdef。シミュレーター用の 's はありません。

コード:

if (achievement.completed) {
    [self showAchievementNotification: [_achievementDescriptions objectForKey:achievement.identifier]];
}

コードを変更したので、今は動作します:

if (achievement.percentComplete >= 100.0f && percentComplete == achievement.percentComplete) {
    [self showAchievementNotification: [_achievementDescriptions objectForKey:achievement.identifier]];
}

これは完全に機能します。

4

1 に答える 1

0

私はなんとか別の方法を理解することができました。質問を編集しました。最後のコードスニペットには回答があります。

于 2012-07-30T09:11:58.457 に答える