Получить общее значение в EditText в ListView

1

Я хочу создать демонстрационное приложение, которое вычисляет приз контента в listview. Пользователь может установить количество в Edittext, из этого количества я хочу получить автоматическую сумму всех imtems. В настоящее время я использую setOnFocusChangeListener на Edittext.. но я не получил tatal. Пожалуйста, смотрите изображение...
Изображение 174551

Любое предложение?

Благодаря..

  • 0
    Поделитесь кодом, который у вас есть.
  • 2
    Нет причин для кода, он чисто теоретический с точки зрения дизайна.
Теги:
android-edittext
android-listview

5 ответов

2
Лучший ответ

Вместо setOnFocusChangeListener используйте для каждого EditText

addTextChangedListener(new TextWatcher() {
        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
        }

        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {
        }

        @Override
        public void afterTextChanged(Editable s) {
            totalTextView.setText(getSumOfAll());
        }
    });
}
2

В EditText вы можете добавить TextWatcher с помощью addTextChangedListener(...).

Этот TextWatcher изменит данные подчеркивания и вызовет onDataChanged() на адаптере.

1

Используйте ListViews getChildCount() и getChildAt(i) чтобы получить ваши EditTexts, затем getText() и суммировать их.

     int count = listviewview.getChildCount();
     int sum=0;
        for (int i=0; i<count; i++) {

            EditText t = (EditText)((YourLayout)view.getChildAt(i)).getChildAt(1); //1 will get your EditText from the Layout of the List Item because you have 3 children there.
            sum+=Integer.parseInt(t.getText());

        }
return sum*yourprice;

Надеюсь, поможет.

0

Вы можете установить TextWatcher на каждое текстовое изображение, а также на текст, изменивший метод, получить строку из каждого текста редактирования, разделить значение на целое и добавить к сумме.

0

Так как ваши строки идеально фиксированы (или нет), либо это не имеет значения. Все, что вам нужно сделать, это перебрать каждый элемент в вашем адаптере ListView, а затем захватить текст из каждого из них, а затем извлечь ваши данные. Затем следите за ним и обрабатывайте его, но вы хотите это сделать.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню