gpt4 book ai didi

objective-c - 将 NSNumberFormatter 连接到 NSTextfield

转载 作者:行者123 更新时间:2023-12-03 17:41:23 25 4
gpt4 key购买 nike

我正在尝试使用 NSTextField 的格式化程序导出将 NSNumberFormatter 连接到 NSTextfield (如下图所示)。我的格式化程序子类如下:

#import <Foundation/Foundation.h>

@interface FieldFormatter : NSNumberFormatter

@end

#import "FieldFormatter.h"

@implementation FieldFormatter

- (NSNumberFormatterBehavior)formatterBehavior {
return NSNumberFormatterBehavior10_4;
}

- (NSNumberFormatterStyle)numberStyle {
return NSNumberFormatterDecimalStyle;
}

@end

enter image description here

运行程序时没有出现任何错误,但格式化程序无法正常工作。当我在文本字段中输入小数时,它会向上舍入,即 13.8 变为 14。我根本无法在文本字段中输入小数。

在 Interface Builder 中使用带有 NSNumberFormatter 的 NSTextField 时,我可以使其正常工作。但我更愿意通过代码来完成此操作,这样我就可以更好地控制格式。

所以我想做的是 -子类 NSNumberFormatter,将格式化程序连接到 XIB 中的文本字段,然后在用户将数字输入到文本字段后,该数字就会被格式化。

任何建议都会有帮助。

最佳答案

分配初始化格式化程序,然后只需在文本字段上调用 ​​setFormatter: 即可。

FieldFormatter *formatter = [[FieldFormatter alloc] init];
[myTextField setFormatter:formatter];

而且,如果您没有在 IB 中使用它执行任何操作,则应该删除该连接以及代表您的 FieldFormatter 实例的蓝色立方体。

关于objective-c - 将 NSNumberFormatter 连接到 NSTextfield,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13115119/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com