如何实现这种风格的 UITextField
How to achieve this style of UITextField
我有一个 UITextField
让用户输入从文本返回的 4 个数字 message.I 已正确设置 UITextField
样式和背景图像,但不知道如何安排这些四个数字 nicely.What 我想要的是:
但结果是这样的:
这是我对 UITextField
的设置。
如何在键盘输入时很好地分隔数字,有帮助吗?
我建议您在一个视图中放置四个文本字段,为其添加圆角并将其添加到您的视图层次结构中。您的视图将具有您想要的背景,并且您的文本字段将是透明的 (clearColor)。
然后,在您的代表中,当在一个文本字段中输入文本时,将您的光标移动到下一个文本字段
我建议使用 NSKernAttributeName
属性:
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"1234"];
[attributedString addAttribute:NSKernAttributeName value:@(30) range:NSMakeRange(0, 4)];
self.textField.attributedText = attributedString;
我有一个 UITextField
让用户输入从文本返回的 4 个数字 message.I 已正确设置 UITextField
样式和背景图像,但不知道如何安排这些四个数字 nicely.What 我想要的是:
但结果是这样的:
这是我对 UITextField
的设置。
如何在键盘输入时很好地分隔数字,有帮助吗?
我建议您在一个视图中放置四个文本字段,为其添加圆角并将其添加到您的视图层次结构中。您的视图将具有您想要的背景,并且您的文本字段将是透明的 (clearColor)。 然后,在您的代表中,当在一个文本字段中输入文本时,将您的光标移动到下一个文本字段
我建议使用 NSKernAttributeName
属性:
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"1234"];
[attributedString addAttribute:NSKernAttributeName value:@(30) range:NSMakeRange(0, 4)];
self.textField.attributedText = attributedString;