2013-07-05 3 views
8

Вопрос: Как получить текущий вид ViewPager FragmentStatePagerAdapter?Android: ViewPager FragmentStatePagerAdapter получает текущий вид

  1. Я потратил почти 24 часа на это и искал везде для подходящих решений.
  2. Получить текущую позицию легко, я уже получил это. Это текущий ток Просмотр.
  3. FragmentStatePagerAdapter не требуется, PagerAdapter.

    • This solution предложил SetTag и findViewWithTag через instantiateItem(View container, int position). Это для PagerAdapter.
    • Однако в FragmentStatePagerAdapterinstantiateItem имеет ViewGroup параметров неПросмотр парам: instantiateItem(**ViewGroup** container, int position)

Так что я надеюсь, что это не невозможно, это? Пожалуйста помоги!

ответ

4

Вы можете использовать SetTag трюка с точкой зрения вы возвращающиеся в вашем instantiateItem метода.

Здесь я использую ViewPager с PagerAdapter, но я думаю, что эта идея может сработать и для вас.

Итак, когда вы инстанцирование своих взглядов (в PagerAdapter метод также instantiateItem (ViewGroup контейнер, внутр положение)), вы должны использовать SetTag на ваш взгляд.

Как это:
view.setTag("view" + position);
return view;

Так что, когда вам нужно текущий вид, вы должны сделать это: View view = (View) pager.findViewWithTag("view" + pager.getCurrentItem());, где пейджера является ViewPager, который вы можете получить прохождение его params из вашей Activity на ваш адаптер.

+0

извините за поздний ответ и спасибо за помощь. Как вы получили «представление» в своем представлении view.setTag(), а param - «контейнер ViewGroup»? – jerrytouille

+0

Извините за еще более поздний ответ. На самом деле вид, о котором я говорил, - это представление, которое вы возвращаете в конце ** instantiateItem **. –

Смежные вопросы