Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Eugen167
0 / 0 / 0
Регистрация: 03.06.2015
Сообщений: 104
#1

Не выводиться информация в ListView с использованием адаптера - Программирование Android

06.12.2016, 09:11. Просмотров 166. Ответов 2
Метки нет (Все метки)

У меня есть три класса:t_table, List_Time_Table, and TimeAdapter. Суть в том, что в TimeAdapter я создал и настроил свой адаптер:
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
public class TimeAdapter extends BaseAdapter {
 
    Context ctx;
    LayoutInflater lInflater;
    ArrayList<Time_Table> objects;
 
    TimeAdapter(Context context, ArrayList<Time_Table> time_tabl) {
        Log.i("TimeAdapter", "Конструктор");
        ctx = context;
        objects = time_tabl;
        lInflater = (LayoutInflater) ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }
 
 
    // кол-во элементов
    @Override
    public int getCount() {
        Log.i("TimeAdapter", "Количество элементов");
        return objects.size();
    }
 
    // элемент по позиции
    @Override
    public Object getItem(int position) {
        Log.i("TimeAdapter", "Элементо по позиции");
        return objects.get(position);
    }
 
    // id по позиции
    @Override
    public long getItemId(int position) {
        Log.i("TimeAdapter", "id по позиции");
        return position;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        // используем созданные, но не используемые view
        Log.i("TimeAdapter", "public View getView");
        View view = convertView;
        if (view == null) {
            view = lInflater.inflate(R.layout.list1, parent, false);
        }
        Log.i("TimeAdapter", "Time_Table p = getProduct");
         Time_Table p = getProduct(position);
 
        // заполняем View в пункте списка данными из товаров: наименование, цена
        // и картинка
        ((TextView) view.findViewById(R.id.dest)).setText(p.depart);
        ((TextView) view.findViewById(R.id.point_of_dest)).setText(p.arrived);
        ((TextView) view.findViewById(R.id.date)).setText(p.date);
        ((TextView) view.findViewById(R.id.cost)).setText(p.cost);
        ((TextView) view.findViewById(R.id.id_fly)).setText(p.id);
        Log.i("TimeAdapter", "заполняем View");
        return view;
    }
 
    // товар по позиции
    Time_Table getProduct(int position) {
        Log.i("TimeAdapter", "товар по позиции");
        return ((Time_Table) getItem(position));
    }
}
В List_Time_Table я создал ArrayList и заполнил его данными:
Java
1
2
3
4
5
6
public class List_Time_Table extends AsyncTask<Void, Void, Integer> {
    public ArrayList<Time_Table> time_tables = new ArrayList<Time_Table>();
 
................
 
time_tables.add(new Time_Table(p_o_d, destin, date_ru, cost, id_f));
далее в классе t_table мне нужно все это собрать в кучу чтобы вывести в ListViev(его id - list_view_tables):

Java
1
2
3
4
5
6
7
8
List_Time_Table list_time_table = new List_Time_Table();//здесь я получаю данные из JSON и заполняю ими список
        list_time_table.execute();
        adapter = new TimeAdapter(this, list_time_table.time_tables);//здесь я формирую адаптер и пытаюсь
//отправить в него свой список, как я понял из попыток все починить именно тут проблема
        
        // настраиваем список
        ListView lvMain = (ListView) findViewById(R.id.list_view_tables);
        lvMain.setAdapter(adapter);
Несмотря на все мои попытки список так и не материализовался
Возможно проблема в том, что я список формирую в одном классе, а использую его в другом, но вроде так можно... Или нельзя?

Добавлено через 6 часов 53 минуты
Вообщем я наконец разобрался с адаптером:
проверил вот так:
Java
1
2
time_tabl.add(new Time_Table("1", "2", "3", 4, 5));
        adapter = new TimeAdapter(this, time_tabl);
все это в классе t_table и список вывелся. Проблема в том, что я формировал список для заполнения в классе List_Time_Table и мне его как нужно перенести в t_table. Как это можно сделать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2016, 09:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не выводиться информация в ListView с использованием адаптера (Программирование Android):

Неадекватное поведение адаптера ListView - Программирование Android
Собственно есть кастом-адаптер. В него приходят два массива с данными. В dates находится даты в формате &quot;29.05.15&quot;. В photos ссылки на...

Получить из ListView адаптера значение в OnItemClickListener - Программирование Android
В OnItemClickListener передается заполненый адаптер и номер позиции. Как вытянуть из него значение объекта ? public void...

С помощью адаптера добавить два xml-я в listView - Программирование Android
Есть два .xml &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;LinearLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; ...

Не отображается информация в ListView - Программирование Android
В общем-то вопрос интересный появился. Написал я один адаптер вложил его во второй. Все запустил, работает отлично, ошибок никаких не...

В файл перестает выводиться информация, стоит лишь заменить символы в тексте - C#
Доброе время суток, int fieldsCount = result.Count; System.IO.StreamWriter sw = new...

Динамически скомпилировать exe-файл, при запуске которого будет выводиться заданная информация - C#
Не подскажите или покажете пример Вот например есть форма там: 1 техтбох 1 бутон Ты водишь в техтбох 123 и жмёшь бутон в папке с...

2
demixdn
228 / 175 / 54
Регистрация: 31.10.2016
Сообщений: 401
06.12.2016, 12:27 #2
Предлагаю знакомство с AsyncTask начать с этого урока. И просмотреть их все.
0
Pablito
2525 / 2004 / 624
Регистрация: 12.05.2014
Сообщений: 7,030
Завершенные тесты: 1
06.12.2016, 12:35 #3
а еще было бы неплохо почитать про Java Naming Conventions, особенно про naming
и еще почитать про setters/getters и OOP в целом
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.12.2016, 12:35
Привет! Вот еще темы с ответами:

Как отключить обновление адаптера ListView при прокрутке? - Android
Всем привет! имеется листвью, туда я загружаю собственный адаптер и одновременно загружаю картинки из интернета. Все хорошо, все...

Как получить правильную позицию в ListView в GetView адаптера? - Xamarin
Я создал список ListView с SeekBar, но когда ловлю событие ProgressChanged в адаптере: public override View GetView(int position, View...

Не выводится информация в ListView - C++ WinAPI
И снова здравствуйте. Необходимо считать информацию из текстового файла, а затем вывести её в листбокс, при чем каждая строчка текстового...

ListView: не отображается информация в таблице - C# WPF
Люди, я новичок в c#, поэтому не судите строго. Такое дело - таблица в listview заполняется, но не отображается. Такое ощущение, что...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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