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

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

Войти
Регистрация
Восстановить пароль
 
verylazy
Заблокирован
#1

ViewPager - Android

20.09.2013, 17:49. Просмотров 816. Ответов 4
Метки нет (Все метки)

Всем.

Да я недалекий и тупой, уже дня три не могу никак понять
Есть ViewPager
XML
1
2
3
4
5
6
7
<android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:tag="pager" >
    </android.support.v4.view.ViewPager>
Я в него программно добавляю VideoView, но не могу понять как управлять параметрами этих добавленных вьюшек - gravity, размеры, отступы?

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

Но я хочу добавлять вьюшки определенного размера, к примеру 300 на 100 точек.
Я частично (и мне кажется через ж...у) добрался до лейаута этих дочерних картинок вот так
Java
1
2
3
4
5
        FrameLayout.LayoutParams vlp = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.MATCH_PARENT);
        vlp.width = 300;
        vlp.height = 100;
        vlp.gravity = Gravity.CENTER;
        pager.setLayoutParams(vlp);
Если применить строки выше добавить видео таким образом, то рядом с первой картинкой, тут же рядом, идет следующий слайд. Пейджер этот ведь не так должен работать - одна картинка на экране и пальцем их листать.

Если туманно написал - скажите, я перепишу, а то вопрос этот меня мучает.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.09.2013, 17:49     ViewPager
Посмотрите здесь:

создание ViewPager Android
ViewPager Android
Android ViewPager
ViewPager Indicator Android
Android Поворот ViewPager
Обновление содержимого ViewPager Android
Android Правильный ViewPager
ViewPager автодаводка Android
ViewPager setText Android
Изменение Activity из ViewPager Android
Android AsyncTask в Fragment и viewPager
Android ViewPager и Tab

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
20.09.2013, 19:52     ViewPager #2
это нужно делать для VideoView, а не ViewPager"а
Java
1
2
vlp.width = 300;
vlp.height = 100;
а вот это уже для ViewPager"а
Java
1
vlp.gravity = Gravity.CENTER;
verylazy
Заблокирован
20.09.2013, 20:04  [ТС]     ViewPager #3
Гравити у пейджера установлено в xml файле. А как мне обратиться к параметрам вьюшек, которые я программно туда добавляю?
В методе, когда формируется массив VideoView для пейджер адаптера я пытался обратиться как-то что бы выставить размеры вьюшек. Но мне же сначала нужно взять getLayoutParameters(), иначе куда их вписывать?
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 647
20.09.2013, 21:53     ViewPager #4
Может быть проблема в том, что вы сначала задаёте одни параметры слоя MATCH_PARENT, а потом задаёте размер 300 на 100 ?
Java
1
2
3
4
5
FrameLayout.LayoutParams vlp = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.MATCH_PARENT);
        vlp.width = 300;
        vlp.height = 100;
        vlp.gravity = Gravity.CENTER;
        pager.setLayoutParams(vlp);
Может нужно так
Java
1
2
3
FrameLayout.LayoutParams vlp = new FrameLayout.LayoutParams(300, 100);
        vlp.gravity = Gravity.CENTER;
        pager.setLayoutParams(vlp);
http://developer.android.com/referen...rams(int, int)
verylazy
Заблокирован
21.09.2013, 00:24  [ТС]     ViewPager #5
Всем спасибо, получилось!
Теперь только 1 вьюшка на экране, даже если она маленького размера, все листается.
Моя ошибка была в том, что я делал вот так
Java
1
FrameLayout.LayoutParams vlp = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.MATCH_PARENT);
а потом перебивал размеры либо оба либо ни одного, а нужно было только задавать высоту (если необходимо).

Получается так - по ширине MATCH_PARENT, то есть на всю ширину родителя-пейджера, а высота по необходимости задается. Тогда картинка масштабируется с сохранением пропорций и при этом не дает как бы вылезти следующей вьюшке.
Yandex
Объявления
21.09.2013, 00:24     ViewPager
Ответ Создать тему
Опции темы

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