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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 34, средняя оценка - 5.00
Бородач
Заблокирован
#1

ViewPager Indicator - Программирование Android

04.03.2013, 01:25. Просмотров 4460. Ответов 63
Метки нет (Все метки)

Здравствуйте! Взял пример с https://github.com/JakeWharton/Andro...PagerIndicator и хотел бы объединить табы с индикатором который внизу, похожий на горизонтальный scrollbar, но никак не получается, хотя я и задействовал неиспользуемые участки своего головного мозга, подскажите

Проблема тут:
Java
1
2
3
4
5
TabPageIndicator indicator = (TabPageIndicator)findViewById(R.id.indicator);
indicator.setViewPager(pager);
                  
UnderlinePageIndicator mIndicator = (UnderlinePageIndicator)findViewById(R.id.indicator1);
mIndicator.setViewPager(pager);
Вложения
Тип файла: 7z sample.7z (283.8 Кб, 3 просмотров)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2013, 01:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос ViewPager Indicator (Программирование Android):

Viewpager with indicator + horizontal scrolling - Программирование Android
Есть приложение: https://github.com/PhantomRec/JSON В нём реализован список в виде RecyclerView с данным взятыми из JSON формата. ...

Как в TabWidget убрать Tab indicator? - Программирование Android
Можно ли его выключить, или хотя бы сделать прозрачного цвета?

ViewPager - Программирование Android
Помогите пожалуйста. Использую эту фичу в своей программе(пример один и его очень много в поисковике). И столкнулся с проблемой. На...

ViewPager - Программирование Android
Всем. Да я недалекий и тупой, уже дня три не могу никак понять :wall: Есть ViewPager <android.support.v4.view.ViewPager ...

ViewPager - Программирование Android
Здравствуйте! В приложении использовал пример с Хабра http://habrahabr.ru/post/131889/, однако, не могу понять как при прокрутке экранов...

ViewPager автодаводка - Программирование Android
Подскажите пожалст ,как можно изменить автодаводку уменьшить или увеличить?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Бородач
Заблокирован
05.03.2013, 21:31  [ТС] #31
Разные адаптеры получилось использовать, а вот события объединить пока не получается. TabPageIndicator наследуется от горизонтального скролла и у него нет OnPageChangeListener или же мне самому нужно писать в интерфейсе TabPageIndicator нужный метод и потом реализовывать?
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
06.03.2013, 01:59 #32
Цитата Сообщение от Бородач Посмотреть сообщение
TabPageIndicator наследуется от горизонтального скролла и у него нет OnPageChangeListener
смотрите внимательней.
Бородач
Заблокирован
06.03.2013, 02:10  [ТС] #33
Есть, но теперь у ListView нет setOnPageChangeListener
Или может какое другое событие использовать?
Пока получилось лишь по клику итема ListView кликать по табу индикатора, сейчас ищу противоположный способ, но закрадываются сомнения, получится вечный цикл кликов
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
06.03.2013, 02:14 #34
зачем клик имитировать? что у пейджера нет методов для смены страницы? также в адаптере листа можно реализовать метод аля setSelectedItem().

Добавлено через 45 секунд
Цитата Сообщение от Бородач Посмотреть сообщение
Есть, но теперь у ListView нет setOnPageChangeListener
есть OnItemClickListener
Бородач
Заблокирован
06.03.2013, 02:24  [ТС] #35
Цитата Сообщение от V0v1k Посмотреть сообщение
есть OnItemClickListener
Через него я и делаю клик:
Java
1
2
3
4
5
6
listView.setOnItemClickListener(new OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1, int item, long arg3) {
                indicator.onPageSelected(item);             
            }           
        });
Цитата Сообщение от V0v1k Посмотреть сообщение
также в адаптере листа можно реализовать метод аля setSelectedItem().
Этого я пока не умею.
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
06.03.2013, 02:44 #36
а что вы делаете в OnPageChangeListener'e?
Бородач
Заблокирован
06.03.2013, 02:52  [ТС] #37
В нём ничего не делаю, я даже не знаю как его вызвать
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
06.03.2013, 02:58 #38
indicator.setOnPageChangeListener(listener);
Бородач
Заблокирован
06.03.2013, 03:11  [ТС] #39
Странно, в выпадающей подсказке не было этого метода, а вместо listener создавать new OnPageChangeListener()?
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
06.03.2013, 03:21 #40
да.
Бородач
Заблокирован
06.03.2013, 03:44  [ТС] #41
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
indicator.setOnPageChangeListener(new OnPageChangeListener() {
 
            @Override
            public void onPageScrollStateChanged(int arg0) {
                
            }
 
            @Override
            public void onPageScrolled(int arg0, float arg1, int arg2) {                
                
            }
 
            @Override
            public void onPageSelected(int arg0) {
                listView.setSelection(arg0);
            }
Заработало, и вроде даже лучше чем хотел, итем в ListView сам подымается на вверх
А прокручивать их синхронно можно? Что то я не знаю что туда написать
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
06.03.2013, 03:53 #42
ну в ListView для прокрутки есть setSelection о котором вы уже знаете и другие методы прямо под ним - http://developer.android.com/referen...tSelection(int)

а в PageIndicator не знаю, сами смотрите.
Бородач
Заблокирован
06.03.2013, 04:07  [ТС] #43
Да, мне eclipse как бы намекнул на setSelection, и завис
Спасибо, Вы мне снова очень помогли, буду дальше изучать
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
06.03.2013, 09:33 #44
забыл сказать что в ListView еще есть setOnScrollListener
Бородач
Заблокирован
06.03.2013, 15:30  [ТС] #45
Да, я пытался его использовать, но индикатор не реагирует
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
listView.setOnScrollListener(new OnScrollListener() {
 
            @Override
            public void onScroll(AbsListView view, int firstVisibleItem,
                    int visibleItemCount, int totalItemCount) {
                indicator.onPageScrolled(firstVisibleItem, visibleItemCount, totalItemCount);           
            }
 
            @Override
            public void onScrollStateChanged(AbsListView view, int scrollState) {
                indicator.onPageScrollStateChanged(scrollState);                
            }
            
        });
Хотя очень странно, индикатор наследник скролла и у него по идее должно быть больше методов для прокрутки.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.03.2013, 15:30
Привет! Вот еще темы с ответами:

GridView и ViewPager - Программирование Android
Всем привет. У меня есть GridView, в котором можно, конечно же, тыкать на пункты списка и открывать новую активити: например,...

Правильный ViewPager - Программирование Android
Вообщем все что я сделал прикрепил на картинке. Беда то вот в чем. Ну например я тыкаю пальцем ну и скролирую, а тыкаю то я в кнопку...

создание ViewPager - Программирование Android
здравствуйте,возник вопрос по ViewPager. Не получается добавить компоненты после ViewPager, т.е Статический компонент вверху и внизу,а по...

ViewPager setText - Программирование Android
Приветствую ув.форумчане! Скопировал данный код из startandroid,помогите как сделать, чтобы при каждом слайде был разный текст который...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
06.03.2013, 15:30
Ответ Создать тему
Опции темы

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