Perché lo getActivity()
restituisce null all'interno di AlertDialog
?getActivity() è null all'interno di AlertDialog di un frammento
Questa è la classe -
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());
}
});
}
}
La classe comune sta estendendo frammento come -
import android.support.v4.app.Fragment;
Class Common extends Fragment
{
//Some code
}
e l'uscita è -
the activity outside [email protected]
the activity inside dialog..null
Quindi, in cui il metodo è il codice e dove nel è il ciclo di vita del frammento? – laalto
@laalto - Aggiornamento del codice. Si trova all'interno del metodo 'onCreateView' sul pulsante Salva. –