2

我有一个 NSTextField,里面有一个 NSNumberFormatter。我见过文本字段,如果您将它们留空,它只会将之前的任何数字放回其中。我很好奇 Interface Builder 中是否有提供这种行为的设置。我似乎找不到它,但我对 IB 还很陌生,可能没有找对地方。

谢谢

4

2 回答 2

5

除了默认值(在此没有帮助)之外,我在 IB 中不知道其他行为,但是您可以使用NSTextFieldDelegate(NSControlTextEditingDelegate 的扩展)来监视编辑完成时,使用control:textShouldEndEditing:您可以将值返回如果它留空,则放入框中。您可以在此处阅读有关 NSTextFieldDelegate 的信息

于 2011-08-24T18:17:40.797 回答
1

如果您想为用户删除输入的情况保留一些默认值

1) 子类 NSNumberFormatter

2)实施(如果为空,将放置一个0)

- (NSString *)stringForObjectValue:(id)obj {

    if (obj == nil) {
        return @"0";
    }

    return [super stringForObjectValue:obj];

}

3)在IB中设置类

于 2013-10-30T13:51:04.513 回答