Как открыть активность с помощью getApplicationContext ()? - PullRequest
0 голосов
/ 01 мая 2018

Я использую нижнее меню навигации, на каждом itemMenu я вызываю функцию, чтобы открыть правильное действие:

//In the  activty "A" where there's the bottom nav bar:

HelpActivity help = new HelpActivity();

                case R.id.navigation_home:
                help.openHomeActivity();

В HelpActivity

public void openHomeActivity(){

    Intent i = new Intent(getApplicationContext(), HomeActivity.class);
    startActivity(i);
}

Приложение вылетает, как решить эту проблему, пожалуйста?

ошибка

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

1 Ответ

0 голосов
/ 01 мая 2018
HelpActivity help = new HelpActivity();

Никогда не создайте экземпляр действия самостоятельно.

Изменить openHomeActivity() на:

public void openHomeActivity(Context context){

    Intent i = new Intent(context, HomeActivity.class);
    startActivity(i);
}

Затем, когда вы вызываете его, передайте уже существующий Context, такой как Activity, который имеет ваше нижнее навигационное представление.

...