Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
_Night_Scream_
75 / 74 / 8
Регистрация: 08.08.2013
Сообщений: 584
#1

Ввод числа - Программирование Android

09.02.2016, 12:34. Просмотров 339. Ответов 11
Метки нет (Все метки)

Добрый день.

Задача у меня специфическая.
По клику на button надо показать цифровую клавиатуру с полем ввода.
По кнопке "Готово" (на клавиатуре) мне нужно обработать число и если оно не подходит высветить Toast, но при этом клавиатуру не закрывать.
Задача с одной стороны простая, но что то сегодня торможу, подскажите куда смотреть.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2016, 12:34     Ввод числа
Посмотрите здесь:

Как сделать возможным ввод дробного числа - Программирование Android
Добрый вечер. Что-то никак не въеду, как сделать ввод дробного числа в EditText пользователем, получается только целое использую...

Чтобы ввод первого числа был в одной форме, ввод второго - в другой - Visual Basic
Private Sub Command1_Click() Text1.Text = "" 'î÷èùåíèå îêîí Text2.Text = "" Text3.Text = "0" End Sub Private Sub...

Программа пишет прописью числа, помогите доделать ввод числа с клавиатуры - C#
Программа пишет прописью числа, помогите доделать ввод числа с клавиатуры. using System; using System.Collections.Generic; using...

Ввод числа, решение его по формуле, вывод получившегося числа. - Delphi
Здравствуйте! Только недавно начал изучать Delphi. Не могу понять что за ошибку мне выдает. Помогите пожалуйста. Нужна программа где я...

Как осуществить ввод числа, не зная какой тип числа будет введён? - C++
И не объявляя вводимую переменную как double...

Написать программу, которая на ввод числа N, выводит количество S всех различных представлений этого числа. - Алгоритмы
известно что любое натуральное число N(0<N<=1000) может быть представлено в виде суммы квадратов не более 4-ех положительных целых...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
09.02.2016, 12:40     Ввод числа #2
надо свою рисовать или можно обойтсь EditText с inputType="number" ?
Ханасака
10 / 10 / 0
Регистрация: 12.07.2013
Сообщений: 147
09.02.2016, 12:41     Ввод числа #3
А если в onCreate() добавить
Java
1
2
InputMethodManager inputManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 
inputManager.toggleSoftInput (InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);
а закрывать потом программно?
_Night_Scream_
75 / 74 / 8
Регистрация: 08.08.2013
Сообщений: 584
09.02.2016, 13:02  [ТС]     Ввод числа #4
Паблито, EditText как такового нет, есть button.
Ханасака, не понял как вызвать в onClick это?
CoolMind
418 / 401 / 65
Регистрация: 06.10.2012
Сообщений: 1,727
09.02.2016, 13:08     Ввод числа #5
_Night_Scream_, и куда вводит пользователь?
Причём тут onClick?
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
09.02.2016, 13:21     Ввод числа #6
показываю принцип
допустим et - э то наш Edittext, а btn - это кнопка
я проверял во фрагменте, поэтому если делать это в активити то там надо убрать вызовы getContext() и getActivity()

код, где то в onCreateView фрагмента или onCreate() активити
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
        final EditText et = (EditText) view.findViewById(R.id.number);
        et.setOnEditorActionListener(new TextView.OnEditorActionListener() {
            @Override
            public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
                if (actionId == EditorInfo.IME_ACTION_DONE) {
                    if (Math.random() > 0.5)
                        Toast.makeText(getContext(), "Подходит", Toast.LENGTH_SHORT).show();
                    else Toast.makeText(getContext(), "Не подходит", Toast.LENGTH_SHORT).show();
                    et.setVisibility(View.GONE);
                    InputMethodManager imm = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
                    imm.toggleSoftInput(InputMethodManager.RESULT_HIDDEN, 0);
                }
                return false;
            }
        });
 
        view.findViewById(R.id.btn).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                et.setVisibility(View.VISIBLE);
                et.requestFocus();
                InputMethodManager imm = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
                imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
            }
        });
без всяких оптимизаций и рефакторинга, только показать принцип

и разметка
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="LOL"
        android:id="@+id/btn"/>
 
    <EditText
        android:visibility="gone"
        android:id="@+id/number"
        android:layout_width="250dp"
        android:layout_height="wrap_content"
        android:imeOptions="actionDone"
        android:inputType="number" />
_Night_Scream_
75 / 74 / 8
Регистрация: 08.08.2013
Сообщений: 584
09.02.2016, 13:23  [ТС]     Ввод числа #7
CoolMind,
По клику на button надо показать цифровую клавиатуру с полем ввода.
По кнопке "Готово" (на клавиатуре) мне нужно обработать число и если оно не подходит высветить Toast, но при этом клавиатуру не закрывать.
Нет editText, только button.
А ввод значения в переменную int, которая в этом классе.
Pablito
09.02.2016, 13:25
  #8

Не по теме:

после последнего сообщения я начинаю думать что надо лепить свой велосипед, с кнопками типа как в терминалах
наверняка такие есть на гитхабе, поэтому я такое писать и тестить не стану )

_Night_Scream_
75 / 74 / 8
Регистрация: 08.08.2013
Сообщений: 584
09.02.2016, 13:27  [ТС]     Ввод числа #9
Паблито, да в том то и дело, велосипед свой не хочу, пытаюсь найти что то умное.
В первый раз столкнулся с таким, поэтому тоже в ступоре.
Pablito
09.02.2016, 13:30
  #10

Не по теме:

боже
там писанины на 40 минут от силы - лаяут с кнопками цифр, кнопка сброса и кнопка ОК
+ текствью в которое будет добавляться по одному символу при нажатиях на нопки
+ слушатель на ОК который выводит тост и делает проверки

_Night_Scream_
75 / 74 / 8
Регистрация: 08.08.2013
Сообщений: 584
09.02.2016, 13:43  [ТС]     Ввод числа #11
Паблито, не, это самый край, должно быть проще.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.02.2016, 16:32     Ввод числа
Еще ссылки по теме:

Организовать ввод числа, вывести таблицу умножения для этого числа и значение его факториала - C++ Builder
Организовать проект Умножения.В проекте организовать ввод числа.Вывести таблицу умножения дляэтого числа и значение его факториала. ...

Дана матрица 4х4. Для каждого столбца найти и вывести суму значений, что больше заданого числа А.Ввод числа с клавиатуры - Pascal ABC
срочно нужно, а я не знаю как решить.

Длинная арифметика. Ввод и вывод длинного числа и умножение длинного числа на короткое - PascalABC.NET
Разработать процедуры или функции ввода и вывода длинного числа и умножение длинного числа на короткое.

ввод с клавиатуры - требовать у пользователя ввод, пока не будет корректный ввод - Java SE
Поискал в интернете и тут - не могу найти ответ на свой вопрос. Основная проблема - фильтровать введённые данные пользователя (введённые...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
_Night_Scream_
75 / 74 / 8
Регистрация: 08.08.2013
Сообщений: 584
10.02.2016, 16:32  [ТС]     Ввод числа #12
Еще вопрос о вводе числа.
Я использую PreferenceFragment для показа настроек.
В PreferenceFragment метод addPreferencesFromResource берет указанный layout.
В layout использую EditTextPreference.

В результате всего этого получаю экран со строками, после нажатия на строку появляется диалог с EditText для изменения числа. Всё стандартно.

Есть ли возможность сразу показывать EditText'ы списком с оглавлением на фрагменте, минуя dialog?
Хочу исключить диалог чтобы лишний раз не нажимать пальцем по строке, а сразу на ввод и появлялась клава.

Можно конечно набросать свой фрагмент со своими EditText, но тогда надо писать механизм записи настроек в файл, а в PreferenceFragment всё готово.
Yandex
Объявления
10.02.2016, 16:32     Ввод числа
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru