Is it possible to initialize an Activity from a Fragment in Android?

1

I have this code in a fragment and I want to start an Activity:

 @Override
    public void onResume()
    {
        super.onResume();
        if (!getUserVisibleHint())
        {
            return;
        }

        MainActivity mainActivity = (MainActivity)getActivity();
        mainActivity.findViewById(R.id.fab).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(getActivity(),"Iniciar Actividad!",Toast.LENGTH_SHORT).show();
//Aqui pretendo inicializar la actividad

                Intent i = new Intent(getActivity(), AddClientActivity.class);
                startActivity(i);

            }
        });
    }

I'm practically lamando a FloatingButton that I have in MainActivity

    
asked by Alex Trujillo 20.06.2017 в 20:01
source

1 answer

2

Of course it's possible! If you want to do it within a Fragment , use as context the Activity containing the Fragment , using getActivity () :

Intent i = new Intent(getActivity(), AddClientActivity.class);
getActivity().startActivity(i);

Even as another option, you are getting the instance of MainActivity , you can use this as context:

MainActivity mainActivity = (MainActivity)getActivity();

like this:

 Intent i = new Intent(getActivity(), AddClientActivity.class);
 mainActivity.startActivity(i);
    
answered by 20.06.2017 / 20:14
source