边框样式UITextField
的{{1}}的默认高度为31px。对于iPad应用程序,我想制作一个高度为60像素的UITextField,并将文本垂直居中放置以使其看起来很好(默认情况下,文本仅在UITextField的顶部边框下方几个像素处绘制)。 / p>
如果我这样做......
UITextBorderStyleRoundedRect
...结果如下:http://grab.by/6jRc
如您所见,输入文本不是垂直居中的。我试图找到一个解决方案,发现我只需从UITextField继承我自己的自定义类并覆盖UITextField *txtLogin = [[UITextField alloc] initWithFrame:CGRectMake(200,200,300,60)];
txtLogin.borderStyle = UITextBorderStyleRoundedRect;
方法。
但是,从未调用此方法,根据this link,Apple的API中存在错误。因此,我正在寻找有效的替代方案。
解决此问题并为输入文本实现正确的垂直对齐有什么好方法?
答案 0 :(得分:21)
[txtLogin setContentVerticalAlignment:UIControlContentVerticalAlignmentCenter];