Why getActivity() return null inside an AlertDialog ?
This is a class -
Class A extends Common{ @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { Button save = (Button) view.findViewById(R.id.save); save.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { System.out.println("the activity outside dialog.."+getActivity()); AlertDialog.Builder alert = new AlertDialog.Builder(getActivity()); alert.setPositiveButton("Check acitivity", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { dialog.cancel(); System.out.println("the activity inside dialog.."+getActivity()); } }); } }
The general class extends the fragment as
import android.support.v4.app.Fragment; Class Common extends Fragment {
And the conclusion is
the activity outside dialog..com.testapp.main.MainActivity@42131080 the activity inside dialog..null
source share