Замена фрагмента внутри фрагмента - PullRequest
0 голосов
/ 25 ноября 2018

Я прочитал в Интернете, что для вызова другого фрагмента, чтобы задействовать FrameLayout, вам нужно создать интерфейс, который взаимодействует с действием, и когда кнопка щелкает функцию внутри интерфейса, определенного в действии, заменяет фрагмент надругой фрагмент, но вместо создания интерфейса я попытался сделать это непосредственно из фрагмента, и это сработало.Так какие-нибудь причины, почему я не должен делать это?

import android.content.Context;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTransaction;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;

public class FragmentOne extends Fragment {


    public FragmentOne() {
        // Required empty public constructor
    }


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

        Button btnONe = view.findViewById(R.id.btnOne);
        btnONe.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                onButtonPressed();
            }
        });

        return view;
    }

    public void onButtonPressed() {

        FragmentTransaction fragmentTransaction = getActivity().getSupportFragmentManager().beginTransaction();
        fragmentTransaction.replace(R.id.fragmentContainer, new FragmentTwo("Femin Dharamshi did it!"));
        fragmentTransaction.addToBackStack(null);
        fragmentTransaction.commit();

    }

}

1 Ответ

0 голосов
/ 25 ноября 2018

Фрагменты являются частью действия, и фрагмент должен быть размещен через родительские действия, как указано в документации Google для разработчиков Android.Вы можете обратиться по этой ссылке: - https://developer.android.com/training/basics/fragments/communicating

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