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

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

Войти
Регистрация
Восстановить пароль
 
Alex_Fedor
30 / 30 / 4
Регистрация: 20.01.2015
Сообщений: 219
#1

SmoothScrollToPosition не прокручивается список на позицию - Программирование Android

03.08.2016, 16:15. Просмотров 192. Ответов 2
Метки нет (Все метки)

Странно но почему то не прокручивается список на указанную позиции. Вроде бы все просто до элементарности, но код не работает.
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
private void onShowListDB() {// выводим имена всех таблиц из БД в список
        // TODO Auto-generated method stub
        arrTblNames.clear();//очищаем  масиив
        Cursor c = db.rawQuery("SELECT name FROM sqlite_sequence", null);//достаем имена всех таблиц из БД
        int count=0;// счетчик позиции на которую надо сделать скролинг lvSelectTableName
        String nameSimple;// просто переменная для упрощения кода
        boolean match=true;// флаг совпадения имен
                if (c.moveToFirst()) {//ставим курсор на первую позицию
                    while ( !c.isAfterLast() ) {//заполняем список, вычисляем позицию на которую надо прокрутить список
                        nameSimple=c.getString( c.getColumnIndex("name")) ;
                        arrTblNames.add( nameSimple );
                        if (!nameSimple.equals(useTableName)  && match){
                            count++;
                        }
                        if (nameSimple.equals(useTableName) && match){
                            match=false;
                        }
                        c.moveToNext();
                    }
                 // настраиваем стандартный адаптер  
                    ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,arrTblNames);
                    lvSelectTableName.setAdapter(adapter);
                    Log.d(MY_LOG, " List on Position = "+ count+"  Use Table Name = "+ useTableName);
                    lvSelectTableName.smoothScrollToPosition(count);//строчка кода не работает
                    return;
                }
                Log.d(MY_LOG, "Какие то проблемы со считыванием таблиц из БД");
                intent.putExtra("nameWantBase", useTableName);
                setResult(RESULT_CANCELED, intent);
                finish();      
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.08.2016, 16:15     SmoothScrollToPosition не прокручивается список на позицию
Посмотрите здесь:
Узнать позицию по GPS Android
Android Задать позицию ListView в ViewPager
Android Движение ImageView. Объект возвращается на исходную позицию
Сделать позицию на карте не зависящей от плотности точек на экране Android
Lisp Вставка в список в заданную позицию
Вставить заданный элемент в список на N-ую позицию Prolog
Вставка элемента на заданную позицию в список, TurboProlog Prolog
Turbo Pascal Написать программу вставки элемента X в список L, в позицию Р
Рекурсия и списки: вставка заданного элемента в список на N-ую позицию Prolog
C++ Функция добавления элемента в односвязный список в указанную позицию
C++ АТД список. Перемещение заданного элемента на первую позицию
Вставка в список в заданную позицию заданное число раз Prolog

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Alex_Fedor
30 / 30 / 4
Регистрация: 20.01.2015
Сообщений: 219
04.08.2016, 16:33  [ТС]     SmoothScrollToPosition не прокручивается список на позицию #2
сам себе отвечу может кому пригодится. Надо установить выбранный текущий элемент.
Java
1
2
lvSelectTableName.setSelection(count);
lvSelectTableName.smoothScrollToPosition(count);//теперь код работает
klim76
20 / 14 / 2
Регистрация: 10.06.2016
Сообщений: 135
04.08.2016, 19:41     SmoothScrollToPosition не прокручивается список на позицию #3
А еще код будет работать если выполнять его с задержкой скажем в полсекунды. далеко не копал но видимо адаптер еще не готов к тому моменту когда вы запрашиваете прокрутку
Yandex
Объявления
04.08.2016, 19:41     SmoothScrollToPosition не прокручивается список на позицию
Ответ Создать тему
Опции темы

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