我正在为Game Center构建一个自定义显示器,除了我收到以下代码的警告外 -
NSMutableArray *playerIDsArray = [[NSMutableArray alloc] init];
[highScores removeAllObjects];
for (GKScore *thisScore in scores)
{
NSMutableDictionary *thisEntry = [[NSMutableDictionary alloc] init];
NSString *playerID = [thisScore playerID];
[thisEntry setObject:playerID forKey:@"playerID"];
[playerIDsArray addObject:playerID];
[thisEntry setObject:[NSNumber numberWithInt:(int)[thisScore value]] forKey:@"value"];
[highScores setObject:thisEntry forKey:[NSString stringWithFormat:@"%i",[thisScore rank]]]; // warning here
[thisEntry release];
}
[thisScore rank]的警告说“找不到'方法'-rank'(返回类型默认为'id')”。但是,代码工作正常。我一定错过了什么......
任何帮助表示赞赏!
答案 0 :(得分:0)
在GKScore中,排名是NSInteger aka Object ...
调用%i时调用整数..
因此..你必须调用[[thisScore rank]intValue]
来获取NSInteger对象的整数值..
答案 1 :(得分:0)
终于想通了 - 真的有点傻瓜,我只是没有把它包括在内 -
#import <GameKit/GKScore.h>
我只是假设通过导入其他游戏中心标题来覆盖...无论如何,谢谢!