我想知道如何将 % 符号添加到插入 UiTextfield 的任何数字中,以便用户可以知道它是一个百分比,类似于在 Excel 中设置单元格类型时 $ 或 % 符号的工作方式。
我已经查看了整个堆栈溢出,但想知道除了使用观察者附加 % 之外是否还有其他方法。
我想知道如何将 % 符号添加到插入 UiTextfield 的任何数字中,以便用户可以知道它是一个百分比,类似于在 Excel 中设置单元格类型时 $ 或 % 符号的工作方式。
我已经查看了整个堆栈溢出,但想知道除了使用观察者附加 % 之外是否还有其他方法。
你想要的rightView
是UITextField
. 这是我写的一个小类别,可以帮助您为文本字段设置永久前缀或后缀:
@implementation UITextField (Additions)
- (void)setPrefixText:(NSString *)prefix
{
UILabel *label = [[UILabel alloc] initWithFrame:CGRectZero];
[label setBackgroundColor:[UIColor clearColor]];
[label setFont:[UIFont fontWithName:self.font.fontName size:self.font.pointSize]];
[label setTextColor:self.textColor];
[label setAlpha:.5];
[label setText:prefix];
CGSize prefixSize = [prefix sizeWithFont:label.font];
label.frame = CGRectMake(0, 0, prefixSize.width, self.frame.size.height);
[self setLeftView:label];
[self setLeftViewMode:UITextFieldViewModeAlways];
[label release];
}
- (void)setSuffixText:(NSString *)suffix
{
UILabel *label = [[UILabel alloc] initWithFrame:CGRectZero];
[label setBackgroundColor:[UIColor clearColor]];
[label setFont:[UIFont fontWithName:self.font.fontName size:self.font.pointSize]];
[label setTextColor:self.textColor];
[label setAlpha:.5];
[label setText:suffix];
CGSize suffixSize = [suffix sizeWithFont:label.font];
label.frame = CGRectMake(0, 0, suffixSize.width, self.frame.size.height);
[self setRightView:label];
[self setRightViewMode:UITextFieldViewModeAlways];
[label release];
}
@end
顺便说一句:https ://stackoverflow.com/search?q=uitextfield+rightview :截至目前有 4,099 个结果。
[NSString stringWithFormat:@"%d%%", number];
使用UITextFieldDelegate
'textFieldDidEndEditing:
方法。
例子:
- (void)textFieldDidEndEditing:(UITextField *)textField {
NSString *oldText = textField.text;
textField.text = [NSString stringWithFormat:@"%@ %%",oldText];
}