Android - Custom Dialog - Can't get text from EditText

If you want to inflate a xml file into dialog box for creating custom version you can use the following code which gets two input from user

LayoutInflater linf = LayoutInflater.from(this);            
final View inflator = linf.inflate(R.layout.twoinputs, null);
AlertDialog.Builder alert = new AlertDialog.Builder(this); 

alert.setTitle("Tilte"); 
alert.setMessage("Message"); 
alert.setView(inflator); 

final EditText et1 = (EditText) inflator.findViewById(R.id.editText1);
final EditText et2 = (EditText) inflator.findViewById(R.id.editText2);

alert.setPositiveButton("ok", new DialogInterface.OnClickListener() { 
   public void onClick(DialogInterface dialog, int whichButton) 
   { 
          String s1=et1.getText().toString();
          String s2=et2.getText().toString();
          //do operations using s1 and s2 here...
   } 
}); 

alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { 
   public void onClick(DialogInterface dialog, int whichButton) { 
            dialog.cancel(); 
   } 
}); 

alert.show(); 

You are inflating a layout where it is not needed. I fixed your code as you see I removed your line where it inflates and changed the line where you try to find the EditText view.

final Dialog dialog = new Dialog(MyActivity.this);
 dialog.setContentView(R.layout.custom_dialog);
 dialog.setTitle("Title");

 Button button = (Button) dialog.findViewById(R.id.dialog_ok);
 button.setOnClickListener(new OnClickListener() {
     public void onClick(View v) {

            EditText edit=(EditText)dialog.findViewById(R.id.dialog_edit);
            String text=edit.getText().toString();

            dialog.dismiss();
            name=text;

     }
 });   


dialog.show();

An alternative to matsjoe and to krishna (both work):

builder.setPositiveButton(R.string.signin, new DialogInterface.OnClickListener() {
    //@Override
    public void onClick(DialogInterface dialog, int id) {
      // sign in the user ...

      Dialog dialogObj =Dialog.class.cast(dialog);
      EditText etUsr=(EditText) dialogObj.findViewById(R.id.username_id_value);
      userStr = etUsr.getText().toString();      
    }
  }
  );

Kf