1

我已经有了为我的所有文本字段创建填充的解决方案,但我认为我需要简化它,因为我认为这太手动了:

// Padding Left and Right for textfield
UIView *fieldEmail = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 10, 10)];
_fieldEmail.leftViewMode = UITextFieldViewModeAlways;
_fieldEmail.leftView = fieldEmail;

UIView *fieldPassword = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 10, 10)];
_fieldPassword.leftViewMode = UITextFieldViewModeAlways;
_fieldPassword.leftView = fieldPassword;

UIView *fieldRegisterName = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 10, 10)];
_fieldRegisterName.leftViewMode = UITextFieldViewModeAlways;
_fieldRegisterName.leftView = fieldRegisterName;

UIView *fieldRegisterEmail = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 10, 10)];
_fieldRegisterEmail.leftViewMode = UITextFieldViewModeAlways;
_fieldRegisterEmail.leftView = fieldRegisterEmail;

UIView *fieldRegisterPassword = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 10, 10)];
_fieldRegisterPassword.leftViewMode = UITextFieldViewModeAlways;
_fieldRegisterPassword.leftView = fieldRegisterPassword;

我们可以创建循环或其他东西,以便此填充可以影响我的所有文本字段吗?如何简化这个?

谢谢你。

4

1 回答 1

0

您可以继承 UITextField 并覆盖textRectForBounds,editingRectForBoundsdrawPlaceholderInRect. 这已经在 SSToolkit 中完成SSTextField。你可以这样使用它:

textField.textEdgeInsets = UIEdgeInsetsMake(0, 0, 10, 10)

如果您想对所有文本字段使用相同的插图,那么只需对这些值进行子类化和编码。

于 2013-09-12T07:59:41.663 回答