У меня есть вкладки, созданные с помощью FragmentPagerAdapter
:
public class SectionsPagerAdapter extends FragmentPagerAdapter {
static final int PAGE_COUNT = 2;
public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int index) {
switch (index) {
case 0:
return new SessionDetails();
case 1:
return new SessionScoreTable();
}
return null;
}
@Override
public int getCount() {
return PAGE_COUNT;
}}
Мне нужно обновить одну вкладку, нажав кнопки на другой.
Родитель FragmentActivity
имеет:
fragSessionDetails = (SessionDetails) mSectionsPagerAdapter.getItem(0);
и имеет function
:
public void setSessionCompleted(){
fragSessionDetails.processSessionCompleted();
}
который вызывается из другой вкладки (SessionScoreTable
).
Вкладка SessionDetails
имеет функцию:
public void processSessionCompleted(){
Log.d(TAG,"processSessionCompleted" );
bSave.setEnabled(false);
}
bСохранить — кнопка.
В журнале у меня есть NullPointerException
в строке - bSave.setEnabled(false)
:
06-30 16:20:45.414: D/STS_SessionDetails(15876): processSessionCompleted 06-30 16:20:45.414: D/AndroidRuntime(15876): завершение работы виртуальной машины 06-30 16:20:45.414: W/dalvikvm(15876 ): threadid=1: поток завершается с необработанным исключением (group=0x41b62d88) 06-30 16:20:45.414: E/AndroidRuntime(15876): Exception 06-30 16:20:45.414: E/AndroidRuntime(15876): FATAL ИСКЛЮЧЕНИЕ: main 06-30 16:20:45.414: E/AndroidRuntime(15876): Процесс: com.vvv.vvvvvvvvvvvvv, PID: 15876 06-30 16:20:45.414: E/AndroidRuntime(15876): java.lang. NullPointerException 06-30 16:20:45.414: E/AndroidRuntime(15876): в com.vvv.vvvvvvvvvvvvv.SessionDetails.processSessionCompleted(SessionDetails.java:237) 06-30 16:20:45.414: E/AndroidRuntime(15876): в com.vvv.vvvvvvvvvvvvv.Session.setSessionCompleted(Session.java:151)
Похоже, я что-то потерял, но понятия не имею, что. Любая помощь, пожалуйста.