Подтвердить что ты не робот

Вызвать родительскую активность из фрагмента

Если я внутри фрагмента, как я могу вызвать родительскую активность?

4b9b3361

Ответ 1

Да, его право, вызвав getActivity и передав его родительской активности для доступа к его методам или переменным ((ParentActivityName)getActivity())

Попробуйте это.

ParentActivityName - имя родительского класса

Ответ 2

Самый правильный способ - сделать Activity Activity реализовать Interface и использовать прослушиватели. Таким образом, Fragment не привязан к какому-либо конкретному Activity, сохраняя его повторно. В Fragment:

@Override
public void onAttach(Activity activity) {
    super.onAttach(activity);

    // This makes sure that the container activity has implemented
    // the callback interface. If not, it throws an exception
    try {
        mCallback = (OnHeadlineSelectedListener) activity;
    } catch (ClassCastException e) {
        throw new ClassCastException(activity.toString()
                + " must implement OnHeadlineSelectedListener");
    }
}

Таким образом, вы можете Activity прослушать фрагмент, когда он прикреплен к нему.

См. также:

Ответ 3

Просто вызовите родительскую активность с помощью метода getActivity().

CardView cardView = (CardView) getActivity().findView(R.id.your_view);