【问题标题】:iPhone - UITextAlignmentRight in UILabel cuts some part of textiPhone - UILabel 中的 UITextAlignmentRight 剪切了部分文本
【发布时间】:2009-02-24 05:24:45
【问题描述】:

我试图在 UITableViewCell 上显示两个标签,一个带有左对齐文本,另一个带有右对齐文本。文本右对齐的单元格在右侧被切割 1-2 个像素。我尝试增加 UILabel 的宽度,但没有任何区别。

文本在模拟器中看起来很好,但在设备上它被向右切割。

Here's the image URL for referenceLong Text 3被剪掉了)

【问题讨论】:

    标签: iphone


    【解决方案1】:

    我发现 UITableViewCell 中标签的右对齐裁剪问题与使用的字体有关。

    如果您只使用数字,系统、Helvetica 和 Courier 等简单字体不会被剪裁。但是,他们在 Oblique 或 BoldOblique 中会这样做。

    像 Palatino 这样的“Fancier”字体会被剪裁在像零和八这样的宽数字上。

    对于字母,我发现像“W”这样的宽字体在使用包括 system 和 helvetica 等比例字体的非视网膜显示器上总是至少丢失最左边的像素,但对于 Courier 则不然。

    因此,如果使用数字,请使用基本字体,例如 system、Helvetica 或 Courier,并避免使用 Obliques。 任何字体的任何字符的解决方法是在将字符串分配给 label.text 之前在字符串末尾附加一个空格。

    label.autoresizingMask 在某些情况下可能会有所帮助,但我发现它对 UITableViewCell 中的标签问题没有任何影响。

    在 IOS 5.1 中测试

    【讨论】:

      【解决方案2】:

      这可以通过使用右对齐的 UILabel 的 autoResizingMask 属性来克服。

      label.autoresizingMask = UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleHeight;
      

      希望对某人有所帮助。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-12
      • 1970-01-01
      • 2013-12-23
      • 1970-01-01
      • 2014-08-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多