2

当我希望在其矩形内呈现 Å 等字符时,我遇到了 UITextField 问题。

它的顶部被剪掉,使Å看起来像一个A。

在某些情况下,我已经使用这样的自定义 UITextField 解决了它:

- (void)drawTextInRect:(CGRect)rect {
    rect.origin.y = rect.origin.y+5;
    [super drawTextInRect:rect];
}

当文本像这样正常显示时,它起作用:

在此处输入图像描述

但是当您开始编辑文本时,就像不再应用 drawTextInRect 一样,字符的顶部又消失了。

像这样:

在此处输入图像描述

还有其他人对如何解决这个问题有想法吗?

4

1 回答 1

1

- (CGRect)textRectForBounds:(CGRect)bounds改为覆盖以在所有情况下调整文本矩形。我怀疑UITextField当您不编辑文本时会使用标签,而当您编辑文本时会使用其他标签,并且只有其中一个会drawTextInRect:特别调用。

于 2012-10-26T11:11:17.637 回答