Страница 7 из 11

Re: Урок 125. ViewPager

Добавлено: 22 ноя 2013, 18:20
KamiSempai
У ViewPager нет ItemClickListener-а.
Каждая страница - это View, значит, вы можете самостоятельно назначить OnClickListener на этот View.

Re: Урок 125. ViewPager

Добавлено: 25 ноя 2013, 19:21
Andrei
Здравствуйте
Кто-нибудь может помочь с этим ViewPager?
Хотелось бы реализовать возможность слайдов бесконечно в обе стороны
При этом на страничке должна меняться дата (на один день + или - в зависимости от стороны, при этом воскресение пропускаться)
Странички однотипные с выводом запроса из БД по выбранной дате

И скажите пожалуйста, ожидается ли урок по MySQL а то не очень понятно как это сделать :(

Re: Урок 125. ViewPager

Добавлено: 01 дек 2013, 21:51
Frazek
Именно с этим уроком какой-то трабл
http://startandroid.ru/ru/uroki/vse-uro ... pager.html
Исправте пожалуйста.

Re: Урок 125. ViewPager

Добавлено: 03 дек 2013, 02:21
Jeka87x
Можно ли как-то сделать чтобы все заголовки были закреплены и между ними перелистывать? Что-то типа как сейчас на Google Play сделано.

Re: Урок 125. ViewPager

Добавлено: 03 дек 2013, 08:07
Foenix
http://stackoverflow.com/questions/7046 ... google-app
а загуглить никак, да?

Re: Урок 125. ViewPager

Добавлено: 08 дек 2013, 01:49
spirit
Здравствуйте, нужна ваша помощь,только начал разбираться.
Вопрос в следующем, есть FragmentPagerAdapter, и созданные в нем 3 фрагмента

[syntax=java]
public class TitleAdapter extends FragmentPagerAdapter {
public final String titles[] = new String[] { "FragA", "FragB", "FragC" };
public final Fragment frags[] = new Fragment[titles.length];

public TitleAdapter(FragmentManager fm) {
super(fm);
frags[0] = new FragmentA();
frags[1] = new FragmentB();
frags[2] = new FragmentC();
}[/syntax]

В каждом фрагменте есть кнопка, как мне из activity получить доступ к ней.
пробовал следующим образом:

[syntax=java]
TitleAdapter titleAdapter = new TitleAdapter(getSupportFragmentManager());
btnStart = (Button) titleAdapter.frags[0].getView().findViewById(R.id.btnStart);[/syntax]

Но при запуске, ошибка java.lang.NullPointerException

что я не так делаю?

Re: Урок 125. ViewPager

Добавлено: 08 дек 2013, 01:57
rezak90
нужно организовать интерфейс и определить его в активити, во фрагмент в onAttachActivity получить ссылку на интерфейс и потом использовать что бы связаться с активити

Re: Урок 125. ViewPager

Добавлено: 11 дек 2013, 16:50
spirit
rezak90 писал(а):нужно организовать интерфейс и определить его в активити, во фрагмент в onAttachActivity получить ссылку на интерфейс и потом использовать что бы связаться с активити
Не очень, понимаю логику как это работает, попробовал сделать так:
в MainActivity.java вставил
[syntax=java5]
public interface MyInterface {
}[/syntax]

В фрагмент дописал следующее:

[syntax=java5]
public MyInterface mMyInterface;
public void onAttach (MainActivity activity){
if(activity instanceof MyInterface)
mMyInterface = (MyInterface) activity;
}[/syntax]

Как мне теперь из активити получить ссылку на кнопку в фрагменте, что бы потом на нее уже можно было повешать listener?

Re: Урок 125. ViewPager

Добавлено: 12 дек 2013, 19:58
saper666
У меня такой вопрос:
на каждой странице у меня textview. я подгружаю текст и он не влазит целиком на страницу. как сделать вертикальную прокрутку текста на странице? (пробовал добавлять скроллы, но они только показываются - viewpager их блокирует)

Re: Урок 125. ViewPager

Добавлено: 13 дек 2013, 11:26
KamiSempai
Не может быть такого. Поместите текст в ScrollView и все должно работать.
[syntax=xml] <ScrollView
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge" />
</ScrollView>[/syntax]

Re: Урок 125. ViewPager

Добавлено: 03 янв 2014, 05:44
Nproject
Здравствуйте,подскажите пожалуйста,как быть в достаточно типичной ситуации. Я тоже, как и saper666 подгружаю текст и он не помещается целиком на страницу, но мне необходимо отобразить только то , что поместилось, а остальное отобразить на соседний экран, ну и так далее...
Есть идея, что необходимо заранее знать какое количество текста помещается на экран(на каждом экране TextView),скажем в строчках, а далее брать интервалами, которые можно определить например как pageNumber*[i;i+n], где n-количество строчек,которое уместиться на странице.....но я честно говоря не знаю,как это можно реализовать(как считать строчки)+ возможно проблема с изменениями шрифтов, может быть кто-нибудь знает как быть в такой ситуации?нагуглить что-то не получается

Re: Урок 125. ViewPager

Добавлено: 13 янв 2014, 11:21
Ijimekko
Здравствуйте!
Столкнулся со следующей проблемой. Использую ViewPager и FragmentStatePagerAdapter. Всё замечательно работает, но, если происходит изменение ориентации экрана, происходит следующее. ViewPager сохраняет 3 страницы и после их воссоздаёт. По идее, при развотороте, Activity пересоздаётся, т.е. onCreate() отрабатывается. В onDestroy() ссылки обнуляю. Если я принудительно выгружаю приложение, то при запуске не происходит подобного. Где я не прав? Подскажите пожалуйста.
Так, вопрос решил:
@Override
protected void onSaveInstanceState(final Bundle outState) {
// super.onSaveInstanceState(outState);
}

Re: Урок 125. ViewPager

Добавлено: 16 янв 2014, 01:48
sheygam
Доброго время суток!
У меня вопрос на тему которая много раз поднималась но конкретно не кто ответ не дал.
Использую ViewPager и FragmentStatePagerAdapter. при запуске Activity во всех фрагментах крутятся прогресс бары, из другого класса "приходит сообщение" с номером фрагмента, задача убрать прогресс бар и установить нужное содержимое фрагмента , но так чтобы при перелистывании все сохранялось. Если кто то решал задачи по динамическому наполнению фрагментов помогите пожалуйста.

Re: Урок 125. ViewPager

Добавлено: 16 янв 2014, 02:09
Mikhail_dev
В чем проблема сделать во фрагменте методы для обработки, которые дергать через активити? Другими словами это обычные вызовы методов. Нужно лишь ссылки сохранить на фрагменты при добавлении их в FragmentStatePagerAdapter.

Re: Урок 125. ViewPager

Добавлено: 16 янв 2014, 02:12
Mikhail_dev
сли я принудительно выгружаю приложение, то при запуске не происходит подобного.
не происходит подобного чего? И как вы принудительно выгружаете?
Сразу скажу что в onDestroy ничего делать нельзя, метод может вообще не вызываться по самой природе Андроида. Используйте метод onStop или лучше еще onPause

Re: Урок 125. ViewPager

Добавлено: 16 янв 2014, 02:23
sheygam
m090050 писал(а):В чем проблема сделать во фрагменте методы для обработки, которые дергать через активити? Другими словами это обычные вызовы методов. Нужно лишь ссылки сохранить на фрагменты при добавлении их в FragmentStatePagerAdapter.
Отличная идея, но тогда возникает еще один вопрос, допустим я поменял содержимое, но при перелистывании у фрагмента вызывается метод onCreate(), как сохранить изменения? или в таком случае отказаться от FragmentStatePagerAdapter.

План действий такой:
1. использовать FragmentPagerAdapter
2. добавляем в свой Fragment нужный функционал
3. при public Fragment getItem(int position){} сохранять ссылки на Fragment
4. в момент когда нужно "подкрутить" Fragment берем его ссылку и дергаем свои функции


Я все правильно понял?

Re: Урок 125. ViewPager

Добавлено: 16 янв 2014, 02:31
Mikhail_dev
Да. Еще можете глянуть метод у ВьюПейджера setOffscreenPageLimit. Вырезка с урока к одному из адаптеров
Можно сделать вывод. Этот адаптер быстрый, т.к. не требует пересоздания. Но затратный, т.к. все держит в памяти. Т.е. подходит для небольшого количества страниц. Например, набор вкладок или визард.

Правда есть нюанс: хоть сами фрагменты и не уничтожаются, но уничтожается их View-структура и потом создается заново. Вставьте лог в метод onCreateView и убедитесь. Хранится структура только текущей страницы и по одной справа и слева. Это кол-во соседних страниц с сохраняемой View-структурой может быть настроено методом setOffscreenPageLimit.
Вообще данные уж лучше сам фрагмент где-то забирает, если он мертвый, а данные ему готовы. Так будет логичней.

Re: Урок 125. ViewPager

Добавлено: 16 янв 2014, 02:38
sheygam
m090050 спасибо, направление и идею я понял, буду копать, в прицепи количество фрагментов не большое 15-20, и не сильно весомые но аппликация по мимо этого потребляет ресурс, будем разбираться!

Re: Урок 125. ViewPager

Добавлено: 17 янв 2014, 17:59
sheygam
Вопрос перенес в новую тему, не знаю как удалить сообщение.
viewtopic.php?f=33&t=3310

Re: Урок 125. ViewPager

Добавлено: 23 янв 2014, 18:03
ruba123
Скажите пожалуйста, у меня такой вопрос, если класс уже наследуется от какого то другого, как тогда реализовать ViewPager?? Так как надо наследоваться от FragmentPagerAdapter, Fragment но мы не можем потому что наследуемся от другого класса, как быть в такой ситуации?