今天做ios版本兼容测试时候,发现有个UITextField输入框,在ios7输入提示符和输入的内容都是垂直居中显示的;但是ios6上面是垂直方向在顶部显示。
通过查资料发现:
用xib生成的UITextField文字默认是水平左对齐,垂直居中对齐的,但是用代码生成的UITextField确是默认是水平左对齐,垂直顶对齐。到UITextField的头文件看了一下,发现只有设置水平对齐的属性,却没有垂直对齐属性。
因为xib里都可以设垂直对齐属性,所以应有的,于是再到其父类中找,终于在UIControl.h中找到了,下面两个属性就是分别控制水平与垂直方向对齐的:
@property(nonatomic) UIControlContentVerticalAlignment contentVerticalAlignment; // how to position content vertically inside control. default is center
@property(nonatomic) UIControlContentHorizontalAlignment contentHorizontalAlignment; // how to position content hozontally inside control. default is center
通过控制这两个属性就搞定了!!