什么是NSNumberFormatter添加省略号?

时间:2013-07-30 22:05:56

标签: nsnumberformatter

我最近为该对象添加了一个方法,该方法负责对我正在使用NSNumberFormatter返回字符串的游戏进行评分。我刚收到163,930,640的分数,它会以这种方式显示在一个地方。但在另一个地方,在文本标签上,它显示为163,930,6...。我很确定所有的数字都是在活跃的游戏过程中显示出来的,但是当它停止更新时它会转换为省略号。以下是我创建标签的方法:

self.scoreLabel = [[UILabel alloc] init];
self.scoreLabel.hidden = YES;
self.scoreLabel.text = @"0";
self.scoreLabel.frame = [self scoreFrame];
self.scoreLabel.textAlignment = NSTextAlignmentCenter;
self.scoreLabel.backgroundColor = [UIColor clearColor];
self.scoreLabel.font = [UIFont fontWithName:@"Marker Felt" size:36.0];
[self.scoreLabel setTextColor:[UIColor greenColor]];
[self.solutionBackgroundView addSubview:self.scoreLabel];

问题可能是框架(在未显示的方法中设置为200)太小了吗?我可以更改scoreFrame以使用更大的帧进行初始化,但我不知道最大值是多少,所以我不知道它的大小是多少。

我如何适当调整大小以适应未知大小?分数每秒更新10次,所以我不确定使用sizeToFit是否是正确的解决方案。我想因为我正在使用textAlignmentCenter,并且标签位于放置的中心位置,所以我可以增加大小。另一方面,我将添加一个功能,将标签移动到更具限制性的空间。在任何情况下,我真正想知道的是触发省略号的原因。

我使用的格式为NSNumberFormatterDecimalStyle

1 个答案:

答案 0 :(得分:1)

这是UILabel lineBreakMode个问题,而不是NSNumberFormatter问题。文本被截断,因为您的标签不够大,无法显示整个文本。使标签变大或字体变小。

相关问题