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

ошибка в logcat

java.lang.NullPointerException: Attempt to invoke interface method 'void com.example.directoryzsu.NabItemSelectedListener.onNabItemSelectedListener(android.view.MenuItem)' on a null object reference
        at com.example.directoryzsu.MenuListFragment$1.onNavigationItemSelected(MenuListFragment.java:51)

код

public class MenuListFragment extends Fragment {
    private NabItemSelectedListener nabItemSelectedListener;



    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_menu, container,
                false);

        NavigationView vNavigation = (NavigationView) view.findViewById(R.id.vNavigation);
        vNavigation.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
            @Override
            public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
                //Toast.makeText(getActivity(),menuItem.getTitle(),Toast.LENGTH_SHORT).show();
                nabItemSelectedListener.onNabItemSelectedListener(menuItem);
                return false;
            }
        }) ;

        Menu m = vNavigation.getMenu();
        for (int i=0;i<m.size();i++) {
            MenuItem mi = m.getItem(i);

            //для применения шрифта к подменю ...
            SubMenu subMenu = mi.getSubMenu();
            if (subMenu!=null && subMenu.size() > 0 ) {
                for (int j=0; j <subMenu.size();j++) {
                    MenuItem subMenuItem = subMenu.getItem(j);
                    applyFontToMenuItem(subMenuItem);
                }
            }

            //метод, который мы создали в действии
            applyFontToMenuItem(mi);
        }

        return  view ;
    }
    private void applyFontToMenuItem(MenuItem mi) {
        if (getActivity() != null) {
            Typeface font = Typeface.createFromAsset(getActivity().getAssets(), getString(R.string.font2));
            SpannableString mNewTitle = new SpannableString(mi.getTitle());
            mNewTitle.setSpan(new CustomTypeFaceSpan("", font), 0, mNewTitle.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);
            mi.setTitle(mNewTitle);
        }
    }

    public void setNabItemSelectedListener(NabItemSelectedListener nabItemSelectedListener) {
        this.nabItemSelectedListener = nabItemSelectedListener;
    }
}

проблема, я так понимаю, с (@NonNull)

 @Override
public boolean onNavigationItemSelected(**@NonNull** MenuItem menuItem) {
                
   //Toast.makeText(getActivity(),menuItem.getTitle(),Toast.LENGTH_SHORT).show();
   nabItemSelectedListener.onNabItemSelectedListener(menuItem);
   return false;
}

Ответы (0 шт):