Предотвратить пустое поле NSTextField - PullRequest
2 голосов
/ 24 августа 2011

У меня есть NSTextField с NSNumberFormatter внутри него. Я видел текстовые поля, которые, если вы оставляете их пустыми, просто помещают в них то число, которое было в них ранее. Мне интересно, есть ли параметр в Интерфейсном Разработчике, который обеспечивает такое поведение. Кажется, я не могу его найти, но я довольно новичок в IB и, возможно, не смотрю в нужное место.

Спасибо

Ответы [ 2 ]

5 голосов
/ 24 августа 2011

Я не знаю поведения в IB, кроме значения по умолчанию (которое здесь не поможет), но вы можете использовать NSTextFieldDelegate (расширение NSControlTextEditingDelegate) для мониторинга при завершении редактирования, используя control: textShouldEndEditing: вы можете выбросить значение обратно в поле, если оно оставлено пустым.Вы можете прочитать о NSTextFieldDelegate здесь .

1 голос
/ 30 октября 2013

Если вы хотите оставить только какое-то заданное значение по умолчанию для случая, когда пользователь удалил ввод

1) Подкласс NSNumberFormatter

2) Реализация (поставит 0, если пусто)

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

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

    return [super stringForObjectValue:obj];

}

3) установить класс в IB

...