Обновление фрагмента ViewPager при смахивании

У меня есть проблема, с которой я боролся в течение прошлых 2 дней.

Я создаю приложение, которое использует ActionBar, ViewPager & FragmentPagerAdapter. Код для Activity, Fragments & FragmentPagerAdapter в точности соответствует коду, указанному в примере для Android наhttp://developer.android.com/reference/android/support/v4/view/ViewPager.html

Проблема, с которой я сталкиваюсь, - это предположить, что у меня есть только 2 фрагмента в viewPager. при переключении между двумя фрагментами фрагменты не обновляются. onResume не вызывается, потому что viewPager кэширует минимум 1 фрагмент по обе стороны от отображаемого фрагмента.

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

public void onTabSelected(Tab tab, FragmentTransaction ft) {
    TabInfo tag = (TabInfo)tab.getTag();
    for (int i=0; i<mTabs.size(); i++) {
        if (mTabs.get(i) == tag) {
            mViewPager.setCurrentItem(i);
        }
    }
    ((IStartStop)getItem(tab.getPosition())).Start();
}

Тем не менее, когда используется метод Start, NullPointerException вызывается при попытке обновить текстовое представление. Код метода запуска:

public void Start() {
    TextView tv = _view.findViewById(R.id.text);
    tv.setText("test");
}

Исключение выдается в строке:

TextView tv = _view.findViewById(R.id.text);

Интерфейс IStartStop довольно прост:

public interface IStartStop {
    public void Start();
    public void Stop();
}

Я не хочу использовать notifyDataSetChanged (); с POSITION_NONE, потому что каждый раз, когда я пролистываю новый фрагмент, загрузка фрагментов занимает несколько секунд

В настоящее время фрагменты содержат только текстовое представление, в будущем у них будет анимация, поэтому важно:

1- Запускайте анимацию только тогда, когда выбран фрагмент, а не когда выбран фрагмент рядом с ним (способ, которым ViewPager кэширует и возобновляет фрагменты).

2. Остановите анимацию, когда фрагмент больше не выбран, чтобы не тратить ресурсы устройства.

Да, я уже проверил все доступное в интернете, но, похоже, ничего не работает со мной.

Спасибо большое за помощь!

Ответы на вопрос(4)

Ваш ответ на вопрос