Переход на на другое активити из фрагмента

394
06 апреля 2017, 17:56

У меня есть главное активити (MainActivity) и в нем находится фрагмент, как из кода этого фрагмента перейти на новое активити? Делаю вот так -

Часть кода фрагмента:

 MainActivity mainActivity = new MainActivity();
 mainActivity.goToTestInfoProfile();

Часть кода MainActivity:

public void goToTestInfoProfile(){
    Intent intent = new Intent(this, TestInfoActivity.class);
    startActivity(intent);
}

Но в итоге вылезает NullPointerException. Попытался перейти на другое активити на прямую из фрагмента, но также NullPointerException.

Answer 1

В фрагменте напиши:

Intent intent = new Intent(getActivity(), TestInfoActivity.class);
startActivity(intent);
Answer 2

Не правильно создавать новый экземпляр MainActivity, чтобы стартовать другое активити.

Нужно вызывать метод startActivity у уже существующего контекста. Это можно сделать прямо во фрагменте.

READ ALSO
Ошибка при работе с Runtime Permissions

Ошибка при работе с Runtime Permissions

Здравствуйте! Я столкнулся со следующей проблемой: мое приложение должно запрашивать 2 разрешение (CAMERA и WRITE_EXTERNAL_STORAGE)Запрашиваю эти разрешения...

264
Почему не работает JDBC драйвер?

Почему не работает JDBC драйвер?

Вечерок всем! Пытаюсь подключиться к базе данных MYSQL при помощи JDBC драйвераИспользую Intelej Idea - все работает, копипастю ТОТ ЖЕ КОД в Android Studio...

257
ViewPager обновить

ViewPager обновить

Как обновить ViewPagerОн входит в другой ViewPager

300
Помощь с массивом

Помощь с массивом

Есть 2 массива, в каждом из которых n элементовВ первом значение некой переменной w, во втором значение функции, зависящей от этой переменной

194