首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >正确格式化两个UITextFields的货币

正确格式化两个UITextFields的货币
EN

Stack Overflow用户
提问于 2013-08-15 04:46:21
回答 2查看 432关注 0票数 0

我的应用程序中有两个UITextFields,这个应用程序与货币有关。我试图让它的格式正确的$在开头和小数点的地方,它应该。就像我说的。我一直找不到答案来回答我的问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-15 04:59:08

这里发生的事情是,您正在添加一个观察者,它告诉我们用户何时完成编辑。一旦发生这种情况,我们的formatCurrency方法就会完成更新textfield外观的工作。一旦数字字段放弃其第一个响应状态,这些更改就会完全生效。

代码语言:javascript
运行
复制
- (void)viewDidLoad
{
    [super viewDidLoad];
    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(formatCurrency)
                                             name:UITextFieldTextDidEndEditingNotification
                                               object:self.numberField];
}

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    [self.numberField resignFirstResponder];
}

-(void)formatCurrency {
    NSString *currentValue = self.numberField.text;
    long long cur = [currentValue longLongValue];
    NSNumber *curNum = @(cur);
    NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
    [formatter setNumberStyle:NSNumberFormatterCurrencyStyle];

    self.numberField.text = [NSNumberFormatter localizedStringFromNumber:curNum
                                          numberStyle:NSNumberFormatterCurrencyStyle];
}
票数 0
EN

Stack Overflow用户

发布于 2013-10-31 17:36:15

我编写了一个UITextField子类来处理货币格式,如下所示:

https://github.com/TomSwift/TSCurrencyTextField

它将货币金额格式化为用户类型,ATM风格.用户不得输入除数字以外的任何内容。控件使用NSNumberFormatter (货币样式!)在内部和你可以调整,如果你愿意,调整货币符号($),小数位,等等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18246486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档