0

我想要一个NSString格式为“hh:mm:ss”的像素空间,以使用与字符串“88:88:88”完全相同的像素空间。那可能吗?

现在我正在使用:

// ... 
NSMutableString * strS = [[NSMutableString alloc] initWithFormat:@"%d", Seconds];
if (Seconds<10){
  [strS insertString:@"0" atIndex:0];
}

// Make the time to show
[ClocklLabel setText:[NSString stringWithFormat:@"%2@:%2@:%2@", strH,strM,strS]];

没有成功!

4

3 回答 3

4

我认为您正在寻找等宽字体。尝试使用 Courier 例如:

UIFont *courier = [UIFont fontWithName:@"Courier" size:12.0f];
label.font = courier;

如果您尝试创建数字时钟显示,您也可以简单地为每个数字使用单独的标签,并根据需要放置标签。

于 2012-09-19T11:48:11.747 回答
1

您可以使用等宽字体。如果您不想这样做,请使用 aUILabel并将其设置adjustsFontSizeToFitWidth为 YES。但是,在这种情况下,高度会有所不同。

于 2012-09-19T11:52:17.947 回答
0

你的问题的标题暗示你错过了一个重要的细节。NSString仅包含实际文本。

它不是NSString决定字体、颜色或其他属性的。正如其他答案所建议的那样,您应该将字体设置为标签/文本字段/按钮或任何应该显示字符串的视觉小工具。

如果您想结合 text 和 text 属性,您可能需要检查NSAttributedString.

于 2012-09-19T13:05:20.693 回答