Pull to refresh

Comments 8

это верно лишь в общем случае, но, к примеру, попробуйте в любом калькуляторе ввести второй разделитель. Да и у Google в гайдах есть примеры ввода чего угодно, только не дробных чисел :-)
Эти калькуляторы имитируют своих железных собратьев, когда ввод осуществляется преимущественно с помощью кнопок.
А тут, у автора, полноценный текстбокс с курсором и клавиатурой, по крайней мере, поле пытается казаться таковым.
Потом представьте такой несколько надуманный, но возможный кейс: я ввёл с бумажки 123,45. Присмотрелся: ой, на самом деле это 12,345. Я вижу обычное с виду текстовое поле, в котором я бы попытался исправить ошибку следующим образом: удалить точку, сместиться влево, вписать точку. Я не уверен, что решение автора мне это позволит: вдруг там вбита точность 4 цифры перед точкой, т.е. оно не позволит мне удалить точку. Придётся выполнять множество лишних действий.
Может не позволить, Вы правы. Есть ещё пара жёстких вариантов — можно стирать первый разделитель при постановке второго (я обычно при виде таких фокусов вспоминаю родственников этих проектировщиков UX вежливо ругаюсь :-D ) или сделать визуальную маску, чтобы знаки до разделителя и после вводились в разные поля.
На самом деле всё от модели использования зависит, конечно. У автора, насколько мне известно, это практически всегда короткие числа с одним-двумя знаками после запятой, а ввод с самодельной числовой клавиатуры — не надо ждать, пока ОС свою откроет/закроет.
Идеалогически мне Ваш вариант больше всего нравится, но в системах ввода «а-ля калькулятор» он пока не прижился.
А разделитель целой и дробной части всегда точка? ;-)
Проверка точности числа выглядит ужасно. if if elseif elseif…

Хотя бы в один блок записали
if ((decInd < 0 && size > integerSize) || (decInd > digsBeforeDot) || (size - decInd - 1 > digsAfterDot)) {
	isValid = false;
}
Хорошо и будет ещё лучше, если вы потратите еще немного времени и дополните README на github. Как использовать, куда записывать указанную конфигурацию, можно ли использовать этот элемент в XML, какая minSdk?
Было думал написать инпут фильтр для ввода количества денег(евро с центами), но бажные примеры смутили, отложил на потом.
Sign up to leave a comment.

Articles