Я обнаружил, что [NSTextField integerValue]
ведет себя по-разному со значениями, содержащими тысячи разделителей, в зависимости от того, как было установлено значение.
(я нахожусь в Германии, поэтому мой разделитель тысяч в этих примерах является точкой ".").
Если я позвоню [myTextField setIntegerValue:4567]
, текстовое поле будет содержать 4,567 (с разделителем тысяч), а [myTextField integerValue]
возвращает 4567.
Если я введу значение 4,567 , сообщив текстовое поле вручную, или воспользуюсь [myTextField setStringValue:@"4.567"]
, тогда [myTextField integerValue]
вернет просто 4 .
По-видимому, он прекращает синтаксический анализ числа в разделителе тысяч, даже если сам вводит такой разделитель при вызове setIntegerValue
.
Итак, у меня фактически два вопроса:
- Есть ли настройка или другой простой способ, которым я могу запретить форматировать число при использовании
-setIntegerValue:
?
- Могу ли я "включить" разбор номера, чтобы понять / принять тысячи разделителей при вызове
-integerValue
? Или, если нет, какой самый простой способ проанализировать число с разделителем тысяч из строки NSString?