UITextField输入文本位置

时间:2011-04-19 21:27:20

标签: objective-c uitextfield

您好 我正在制作一个自定义的UITextField:

_textField.borderStyle=UITextBorderStyleNone;
_textField.backgroundColor = _color;
_textField.layer.borderColor = [[UIColor grayColor]CGColor];
_textField.layer.borderWidth = 1.0f;
_textField.layer.cornerRadius = 8.0f;
_textField.font = [UIFont systemFontOfSize:14];

我得到的结果是(图片网址)http://img402.imageshack.us/img402/4330/questionyd.jpg

问题:如何将输入文本稍微向右移动,使其不会触及边框? 我想我必须定义一些.frame属性,但无法确定哪一个。

谢谢! 路易斯

2 个答案:

答案 0 :(得分:4)

您可以将leftView属性设置为空UIView和小框架,将leftViewMode属性设置为UITextFieldViewModeAlways,这样您的占位符视图就会始终使用。< / p>

UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 5, 5)];
_textField.leftView = view;
_textField.leftViewMode = UITextFieldViewModeAlways;
[view release];

答案 1 :(得分:4)

您可以尝试创建自己的UITextField子类并覆盖该方法:

-(CGRect)textRectForBounds:(CGRect)bounds

设置你自己的界限,然后处理默认值。