4

我一直在使用沙盒帐户测试我的游戏中心应用程序,并没有注意到这样的问题,在发布模式下[GKPlayer displayName]会为昵称添加引号。因此,它在名称显示以及开始和结束动画方面看起来很糟糕userNickname"userNickname"是否适用于所有游戏中心版本和用户,如果是这样,我将简单地删除引号。或者我应该使用其他东西而不是displayName在 iOS 6/7 中获取昵称?

解决方案:

我编写了这个小函数来修剪显示名称中的双引号。事实证明它们不是常规引号。

-(NSString *) trimUnnecessaryCharsInGameCenterDisplayName:(NSString *) displayName
{
    return [displayName stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"\u200e\u201c\u201d\u202a\u202c"]];
}
4

1 回答 1

3

displayName属性实际上在昵称(或别名)和玩家的实际姓名之间进行选择。如果您是玩家的朋友,您将获得他们的名字,如果您不是他们的朋友,则会显示昵称。我想引号是为了更清楚地显示正在显示的内容。你会发现普通的 GC 排行榜也有引号。还有[GKPlayer alias]一个总是会给你昵称(不确定它是带引号还是不带引号),尽管文档说你通常不应该使用它。displayName在 iOS6 中是新的,所以我认为这被认为是正确的值。

于 2013-08-13T13:16:36.960 回答