Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
 Аватар для verylazy
462 / 462 / 71
Регистрация: 26.02.2013
Сообщений: 1,263

ViewPager

20.09.2013, 17:49. Показов 1530. Ответов 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);
Если применить строки выше добавить видео таким образом, то рядом с первой картинкой, тут же рядом, идет следующий слайд. Пейджер этот ведь не так должен работать - одна картинка на экране и пальцем их листать.

Если туманно написал - скажите, я перепишу, а то вопрос этот меня мучает.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.09.2013, 17:49
Ответы с готовыми решениями:

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

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

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

4
 Аватар для Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
20.09.2013, 19:52
это нужно делать для VideoView, а не ViewPager"а
Java
1
2
vlp.width = 300;
vlp.height = 100;
а вот это уже для ViewPager"а
Java
1
vlp.gravity = Gravity.CENTER;
1
 Аватар для verylazy
462 / 462 / 71
Регистрация: 26.02.2013
Сообщений: 1,263
20.09.2013, 20:04  [ТС]
Гравити у пейджера установлено в xml файле. А как мне обратиться к параметрам вьюшек, которые я программно туда добавляю?
В методе, когда формируется массив VideoView для пейджер адаптера я пытался обратиться как-то что бы выставить размеры вьюшек. Но мне же сначала нужно взять getLayoutParameters(), иначе куда их вписывать?
0
106 / 106 / 1
Регистрация: 09.04.2012
Сообщений: 655
20.09.2013, 21:53
Может быть проблема в том, что вы сначала задаёте одни параметры слоя 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/r... (int, int)
1
 Аватар для verylazy
462 / 462 / 71
Регистрация: 26.02.2013
Сообщений: 1,263
21.09.2013, 00:24  [ТС]
Всем спасибо, получилось!
Теперь только 1 вьюшка на экране, даже если она маленького размера, все листается.
Моя ошибка была в том, что я делал вот так
Java
1
FrameLayout.LayoutParams vlp = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.MATCH_PARENT);
а потом перебивал размеры либо оба либо ни одного, а нужно было только задавать высоту (если необходимо).

Получается так - по ширине MATCH_PARENT, то есть на всю ширину родителя-пейджера, а высота по необходимости задается. Тогда картинка масштабируется с сохранением пропорций и при этом не дает как бы вылезти следующей вьюшке.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.09.2013, 00:24
Помогаю со студенческими работами здесь

ViewPager Indicator
Здравствуйте! Взял пример с https://github.com/JakeWharton/Android-ViewPagerIndicator и хотел бы объединить табы с индикатором который...

Поворот ViewPager
Как повернуть ViewPager на 90 градусов при заблокированной портретной ориентации? Применяю RotateAnimation, но анимация не срабатывает до...

ViewPager и ListView
Вообще пытаюсь сделать пролистывающиеся редактируемые списки. Для этого использую ViewPager и ListView. Так как ViewPager использует...

ViewPager и Tab
Здравствуйте. Есть приложение на андроид C# (файл проекта в приложении). Он нормально функционирует, но возникает проблема при...

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


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru