当右对齐和方向改变时,UITextField占位符文本位置错误



我不确定我是否发现了iOS SDK中的错误或缺少一些复杂的设置。

我有一个UITextField与右对齐的文本和一些占位符文本。我把它设置为自动大小时,从纵向切换到横向(IB设置是这样的:http://db.tt/laTmXIS)。

当在纵向,它都工作如预期:http://db.tt/skf8wqN然而,旋转后占位符文本是在错误的地方:http://db.tt/7pU5kdR

在我看来,自动调整大小属性没有复制到占位符文本UILabel子视图中。

我已经在一个新项目中复制了这个(在这里下载:http://db.tt/OSnvv2Y),所以在我的代码中,就我所见,没有什么奇怪的。

任何想法?


更新: Dan的解决方案修复了这个问题。添加一个IBOutlet连接到您的textField,然后将此代码添加到您的UIViewController

- (void)didRotateFromInterfaceOrientation:
        (UIInterfaceOrientation)fromInterfaceOrientation {
    textField.textAlignment = UITextAlignmentLeft;
    textField.textAlignment = UITextAlignmentRight;
}

我将其设置为左侧,然后在旋转时在相同的功能中居中,这似乎修复了它,直到他们修复了错误!:)

这似乎是UIKit中的一个bug。请提交错误报告,包括此示例项目和图像。如果示例应用程序同时适用于iPhone和iPad就好了。

我同意文本应该与文本域的右边缘保持齐平

最新更新