Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
3 / 3 / 3
Регистрация: 17.11.2013
Сообщений: 26

Фильтрация ввода у динамически созданных edittext

27.07.2015, 13:53. Показов 2408. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, форумчане!Хотелось бы разобраться,почему после того как я создаю динамически edittext и назначаю ему фильтр ввода,который позволяет вводить буквы,цифры и скобки,я могу вводить только цифры.Создаётся впечатление,что там так и остаётся значение по умолчанию.
Вот фильтр
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
InputFilter FormulsFilter = new InputFilter() 
{
    @Override
    public CharSequence filter(CharSequence str, int start,
        int end, Spanned arg3, int arg4, int arg5) 
    {
        for (int i = start; i < end; i++)
        {
            if ((Character.isLetter(str.charAt(i)))|(Character.isDigit(str.charAt(i)))|(str.charAt(i) == '[')|
                (str.charAt(i) == ']')|(str.charAt(i) == '(')|(str.charAt(i) == ')'));
                    return str;
        }
        return null;
    }
};
Вот создание view
Java
1
2
3
4
5
6
7
8
View _item = ltInflater.inflate(R.layout.item_get_giving_information,layout,false);
TextView Name = (TextView) _item.findViewById(R.id.name_value);
Name.setText("Формула вещества");
EditText Value = (EditText) _item.findViewById(R.id.value);
Value.setHint("Формула вещества");
EditTextList.add(Value);
layout.addView(_item);
EditTextList.get(0).setFilters(new InputFilter[]{FormulsFilter});
View отображается, все хорошо . а вот ввести информацию не могу.Помогите, пожалуйста!Заранее спасибо!
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.07.2015, 13:53
Ответы с готовыми решениями:

Использование динамически созданных EditText в последующих вычислениях
У меня в программе есть некоторое количество заранее созданных полей, кнопка &quot;добавить&quot; и вычисление &quot;итого&quot;. Нужно...

Фильтрация ListView из EditText
Не могу разобраться с фильтрацией в ListView. Фильтрация происходит правильно (находит нужное количество), но выводит не те, которые нужно...

Как сохранить динамически созданные edittext в SharedPreferences
Подскажите пожалуйста, как сохранить данные в созданных edittext . import android.app.Activity; import android.os.Bundle; ...

9
266 / 242 / 96
Регистрация: 11.01.2015
Сообщений: 673
27.07.2015, 14:45
SmirnygaTotosh, тут посмотри
1
3 / 3 / 3
Регистрация: 17.11.2013
Сообщений: 26
27.07.2015, 18:54  [ТС]
Спасибо!Помогло.Как я понял лучше поставить обработчик,чем фильтр.И понять бы, почему фильтр не работал.
0
 Аватар для Valakin
435 / 101 / 15
Регистрация: 21.02.2015
Сообщений: 845
28.07.2015, 08:42
Цитата Сообщение от SmirnygaTotosh Посмотреть сообщение
EditText Value = (EditText) _item.findViewById(R.id.value);
edittext у вас есть в разметке layout?
0
210 / 210 / 60
Регистрация: 22.08.2014
Сообщений: 644
28.07.2015, 09:45
Цитата Сообщение от Valakin Посмотреть сообщение
edittext у вас есть в разметке layout?
Хммм, отличная "заметка" в силу
Цитата Сообщение от SmirnygaTotosh Посмотреть сообщение
я создаю динамически edittext
Интересно, что же он имел в виду под "динамически", если NPE у него не вылезла
0
3 / 3 / 3
Регистрация: 17.11.2013
Сообщений: 26
28.07.2015, 12:04  [ТС]
"Динамически",т.е. созданная с помощью LayoutInflate.Если я как-то неправильно выразил свою мысль,извольте поправить.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.get_needed_information);
    
        message = (TextView) findViewById(R.id.message);
        layout = (LinearLayout) findViewById(R.id.gni);
        ltInflater = getLayoutInflater();
        ok = (Button) findViewById(R.id.select);
        ok.setOnClickListener(this);
        
          View _item = ltInflater.inflate(R.layout.item_get_giving_information,layout,false);
          TextView Name = (TextView) _item.findViewById(R.id.name_value);
          Name.setText("Формула вещества");
          EditText Value = (EditText) _item.findViewById(R.id.value);
          Value.setHint("Формула вещества");
          EditTextList.add(Value);
          layout.addView(_item);
 
         EditTextList.get(0).setKeyListener(FormulsFilter);
    }
В R.layout.get_needed_information нет EditText,но он есть в item_get_giving_information.
R.layout.get_needed_information
XML
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
26
27
28
29
30
31
32
33
34
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
android:background="@drawable/fon"
 android:orientation="vertical">
          <Button
            android:id="@+id/select"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Готово" />
        <TextView
            android:id="@+id/message"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/select"
            android:text="Что дано в задаче?Заполните только то, что дано."
            android:textAppearance="?android:attr/textAppearanceMedium" />
 
<ScrollView
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:id="@+id/scroll">
<LinearLayout
 android:id="@+id/gni"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical">
 
</LinearLayout>
</ScrollView>
</LinearLayout>
0
 Аватар для Valakin
435 / 101 / 15
Регистрация: 21.02.2015
Сообщений: 845
28.07.2015, 12:13
Лучший ответ Сообщение было отмечено SmirnygaTotosh как решение

Решение

android:inputType="number" не прописан?
где же item_get_giving_information
0
210 / 210 / 60
Регистрация: 22.08.2014
Сообщений: 644
28.07.2015, 12:17
Я смотрю ты решил всех окончаетельно запутать.

Цитата Сообщение от SmirnygaTotosh Посмотреть сообщение
В R.layout.get_needed_information нет EditText,но он есть в item_get_giving_information.
и ту же вываливаешь схему В R.layout.get_needed, хотя

View _item = ltInflater.inflate(R.layout.item_get_giving_information,layout,false);
Вопрос - в чём сакральный смысл такого запутанного хода?

P.S. Valakin опередил
1
3 / 3 / 3
Регистрация: 17.11.2013
Сообщений: 26
28.07.2015, 21:07  [ТС]
Простите,что заставляю вас копаться во всем этом хаосе моих мыслей.Вы мне указали на inputType и я понял почему не работало.
Потому что....
XML
1
android:inputType="numberDecimal"
Спасибо за помощь.Тема закрыта.
0
210 / 210 / 60
Регистрация: 22.08.2014
Сообщений: 644
28.07.2015, 21:17
Прям так и закрыта...

Mikalai заработал + (не забудь нажать), а Valakin еще и лучший ответ из-за своего третьего глаза (или шестого чувства) и умения видеть невидимые файлы разметки
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.07.2015, 21:17
Помогаю со студенческими работами здесь

Удаление динамически созданных объектов
создаю объекты. удаляю for i:=2 to Length(mlbl7)-1 do begin mlbl7.Free(); mlbl21.Free(); mlbl9.Free(); ...

Удаление динамически созданных элементов
программа строит график и необходимо нанести на оси координаты. для этого создаю динамически label. однако при изменении границ графика...

События динамически созданных объектов
Доброго всем времени суток! Суть вопроса такова: я динамически в пользовательском классе создаю объект класса TTimer. Мне необходимо...

Сохранение созданных компонентов динамически
Подскажите пожалуйста как при закрытии программы сохрянить созданые динамически компоненты. Создаю их так: procedure...

Удаление динамически созданных TImage
добрый день! нужна помощ! подскажите пожалуста как при динамически созданных image-ах по клику на них сделать так, чтоб они удалялись с...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru