簡體   English   中英

如何簡化文本字段的左右填充

[英]How To Simplify Padding Left and Right for textfield

我已經有了為所有文本字段創建填充的解決方案,但是我認為我需要簡化它,因為我認為這太手工了:

// 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;

我們可以創建循環之類的東西,以便這種填充可以影響我的所有文本字段嗎? 如何簡化呢?

謝謝。

您可以textRectForBounds UITextField並重寫textRectForBoundseditingRectForBoundsdrawPlaceholderInRect 這已經在SSToolkit SSTextField完成。 您可以這樣使用它:

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

如果要對所有文本字段使用相同的插圖,則只需對該值進行子類化和編碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM