studio personalizado full android nullpointerexception dialog textview customdialog

android - personalizado - NullPointerException al cambiar texto textView en un AlertDialog



dialog full screen android (1)

Al principio pensé que era una Activity ahora, veo que es un DialogFragment .

Supongo que la vista pertenece a custom_dialog.xml

View view = inflater.inflate(R.layout.custom_dialog, null); text = (TextView)view.findViewById(R.id.lorem); builder.setView(view);

Entonces use el objeto de vista para inicializar TextView .

text = (TextView)getView().findViewById(R.id.lorem); aquí getView() devuelve nulo.

Está llamando a setText en nulo que lleva a NullPointerException .

Fondo:

  • Solo quiero crear un Diálogo personalizado con un diseño específico y agregar el contenido.
  • Es un DialogFragment

Código:

TextView text; @Override public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); text = (TextView)getView().findViewById(R.id.lorem); text.setText("Test"); } @Override public Dialog onCreateDialog(Bundle savedInstanceState){ AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); LayoutInflater inflater = getActivity().getLayoutInflater(); builder.setView(inflater.inflate(R.layout.custom_dialog, null)); return builder.create(); }

Problema:

  • El cuadro de diálogo funcionó, pero después de que empecé a agregar las líneas en "onCreate" obtuve un error NullPointerException. Espero que alguien pueda ayudarme.

Gracias @Raghunandan por la explicación de Answer + y aquí está el código de trabajo:

@Override public Dialog onCreateDialog(Bundle savedInstanceState){ AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); LayoutInflater inflater = getActivity().getLayoutInflater(); View view = inflater.inflate(R.layout.custom_dialog_style, null); textView = (TextView)view.findViewById(R.id.your_textview); textView.setText("Test"); builder.setView(view); return builder.create(); }