我在我的应用中使用了Google Material Components库的TextFields组件。
如下面的屏幕截图所示,文本输入与leadingView
距离太近。如何在它们之间增加一些余量?
这是我用来创建此文本字段的代码:
emailTextField.translatesAutoresizingMaskIntoConstraints = false
emailTextField.delegate = self
emailTextField.leadingView = UIImageView(image: UIImage(named: "MailIcon"))
emailTextField.leadingViewMode = .always
emailTextFieldController = MDCTextInputControllerUnderline(textInput: emailTextField)
emailTextFieldController?.placeholderText = "Email"
答案 0 :(得分:1)
下划线样式文本字段不再是推荐的设计。原始设计没有为主导视图指定填充常数。考虑更改为填充控制器,该填充控制器在用户研究中显示出更好的性能。
如果必须坚持使用下划线,则很容易获得所需的布局。
MaterialComponents
。这可能意味着如果您使用的是CocoaPods,则需要运行pod update MaterialComponents
。MDCTextInputControllerUnderline
。leadingViewTrailingPaddingConstant
并返回您想要的任何填充。在Objective-C中,这看起来像: - (CGFloat)leadingViewTrailingPaddingConstant {
return 16.f;
}
顺便说一句,我们只是推动了轻松更改清除按钮颜色的功能。您可以通过设置属性textInputClearButtonTintColor
将其设置为与下划线和文字匹配。