Пользовательский адаптер возвращает ошибку при переходе на другой фрагмент и адаптер еще не полностью загружен - PullRequest
0 голосов
/ 04 апреля 2020

У меня есть нижняя панель навигации с 2 меню: Меню A и Меню B. Каждое меню загружено с Фрагментом A и Фрагментом B. Каждый Фрагмент также имеет свой собственный список с пользовательским адаптером. Когда мои приложения впервые открываются, на них отображается фрагмент A. Когда просмотр списка во фрагменте A еще не полностью загружен, я быстро нажимаю Меню B, и приложения cra sh возвращают эту ошибку:

java .lang.NullPointerException: попытка вызвать виртуальный метод 'java .lang.Object android .content.Context.getSystemService (java .lang.String)' для пустой ссылки на объект

Здесь возникает ошибка:

public class FragmentAListAdapter extends ArrayAdapter<MyObject> {
    private Context mContext;
    private int mResource;

    public FragmentAListAdapter(Context context, int resource, ArrayList<MyObject> oobjects) {
        super(context, resource, oobjects); // ==> The error is here
        mContext = context;
        mResource = resource;
    }

    // other functions here
}

Когда я дождался полной загрузки списка, затем переключился в меню B или наоборот, ошибка не вызывается.

В чем может быть проблема? Это потому, что адаптер еще не полностью загружен? И что является лучшим решением для этого? Пожалуйста, помогите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...