Есть ли представление для ввода целых чисел в Android?
Я ищу что-то вроде отдельных частей диалога выбора даты. Представление, которое позволяет вводить целые числа (и только целые числа), которые вы можете ограничить (например, от 1 до 10), где вы можете использовать клавиатуру или стрелки в самом представлении. Он существует?
Это для диалога. Также поможет готовый диалог для запроса целого числа.
- Что делает значение & 0xff в Java?
- Есть ли причина не использовать целые типы фиксированной ширины (например, uint8_t)?
- Преобразование целочисленного в байтовый массив (Java)
- максимальное значение целого числа
- Arrays.asList () массива
- Преобразование коэффициента в целое число в кадр данных
- Каков наиболее эффективный способ проверки двух целых диапазонов для перекрытия?
- Преобразование символов в целые числа в Java
- Преобразование строкового массива в массив целых чисел
- Явный целочисленный массив байтов
- Разница между длинными и внутренними типами данных
- Почему я не могу наследовать от int в C ++?
Виджет NumberPicker
– это, вероятно, то, что вы хотите. К сожалению, он находится в com.android.internal.Widget.NumberPicker
которым мы не можем добраться обычным способом.
Существует два способа его использования:
- Скопируйте код из источника android
- Использовать reflection для доступа к виджету
Вот xml для его использования в макете:
Вот reflection установки параметров NumberPicker (я не тестировал это):
Object o = findViewById(R.id.picker); Class c = o.getClass(); try { Method m = c.getMethod("setRange", int.class, int.class); m.invoke(o, 0, 9); } catch (Exception e) { Log.e("", e.getMessage()); }
Поскольку это внутренний виджет, а не в SDK, будущая совместимость может быть нарушена, если вы используете reflection. Было бы безопаснее катиться из источника.
Исходный источник этой информации используется в этой группе Google .
Внутренний виджет NumberPicker был извлечен из исходного кода Android и упакован для вашего использования, и вы можете найти его здесь . Прекрасно работает!
EDIT : оригинальная ссылка отсутствует, вы можете найти копию виджета здесь
Как уже упоминалось в другом месте , NumPicker теперь доступен в Android SDK с API 11 (Android 3.0):
http://developer.android.com/reference/android/widget/NumberPicker.html
Для Android <3.0 вы можете использовать код здесь:
https://github.com/novak/numpicker-demo
https://github.com/mrn/numberpicker
Вы можете с помощью EditText использовать android:inputType="number"