2015-03-20 16 views
1

Я хотел бы поделиться этим знанием. Я думаю, что этот вопрос находится в разных местах, но я хотел бы ответить на него в ясной форме. Я хочу обновить представление фрагмента (текстовые изображения, кнопки и т. Д.), Которые находятся внутри пейджера представления. Как?Как обновить представление фрагмента в представлении пейджера с помощью pagertabstrip?

ответ

1

Существуют различные приближения, один из наиболее эффективных заключается в следующем:.

1) Изменение распространяется на пользовательский класс адаптера для FragmentStatePagerAdapter»

2) В setOnPageChangeListener вашего зрения пейджера, в метод onPageSelected, сделайте следующее:.

if (position == 0) { 
    adapter.notifyDataSetChanged(); 
} 

, где позиция положение фрагмента, который вы хотите обновить свою точку зрения и адаптер является адаптер определено ранее

3) В пользовательском зрения пейджера класса переопределить этот метод:

@Override 
public int getItemPosition(Object object) { 
    if (object instanceof UpdateableFragment) { 
     ((UpdateableFragment) object).update(); 
    } 
    //don't return POSITION_NONE, avoid fragment recreation. 
    return super.getItemPosition(object);  
} 

4) Реализовать UpdateableFragment во фрагменте, который вы хотите обновить (положение 0 в примере):

public class HomeFragment extends Fragment implements UpdateableFragment { 

и добавьте этот метод в реализацию UpdateableFragment:

@Override 
public void update() { 
    // Do your update code here 
} 

5) Вот и все. Наслаждаться. Надеюсь, это поможет.

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