У меня есть следующие строки кода, которые я использую для создания навигации для загрузки фрагментов и этого приложения для Android. Я получаю сообщение об ошибке: android.support.v4.app.Fragment.mFragmentManager 'по ссылке нулевого объекта. Я создал фрагменты уже, и навигационное устройство работает.android.support.v4.app.Fragment.mFragmentManager 'по ссылке нулевого объекта
public void selectDrawerItem(MenuItem menuItem){
Fragment fragment = null;
Class fragmentClass = null;
switch(menuItem.getItemId()){
case R.id.nav_show_all_events_activity:
fragmentClass = AllEventsFragment.class;
break;
case R.id.nav_whats_hot_today_activity:
fragmentClass = WhatsHotFragment.class;
break;
}
try {
fragment = (Fragment) fragmentClass.newInstance();
} catch (Exception e) {
e.printStackTrace();
}
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().replace(R.id.flContent, fragment).commit();
menuItem.setChecked(true);
setTitle(menuItem.getTitle());
mDrawer.closeDrawers();
}
Ваш способ создания «фрагмента» несколько странный. Вы уверены, что 'фрагмент' не равен нулю? – Floern
Да, вам не нужно отражать, чтобы создать свой фрагмент, просто вызовите 'фрагмент = новый AllEventsFragment()' или 'fragment = new WhatsHotFragment()' – mbonnin
Я пробовал это с моей первой попытки, и он потерпел неудачу ('fragment = new AllEventsFragment() '). Я уверен, что 'fragment' не является нулевым. –