2012-12-31 12 views
5

मुझे डेटा प्राप्त करने में समस्या है, उपयोगकर्ता इनपुट dialog (कस्टम लेआउट के साथ) में इनपुट करता है। कोड को देखो:कस्टम लेआउट के साथ एंड्रॉइड डायलॉग: डेटा लौटा रहा है

unit.xml:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent"> 

<EditText 
    android:id="@+id/editText1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 
</EditText> 
</RelativeLayout> 

कोड:

AlertDialog.Builder builder = new AlertDialog.Builder(this); 
    LayoutInflater inflater = this.getLayoutInflater(); 
    builder.setView(inflater.inflate(R.layout.unit, null)); 
    AlertDialog dialog = builder.create(); 
    dialog.show(); 

Dialog लेआउट मैं बनाया है के साथ खुलता है, लेकिन वह

builder.setPositiveButton("Add", new DialogInterface.OnClickListener() { 
      @Override 
      public void onClick(DialogInterface dialog, int which) { 
         EditText text = (EditText)findViewById(R.id.editText1); 
         Toast.makeText(getApplicationContext(), text.getText(), Toast.LENGTH_SHORT).show(); 
      dialog.dismiss(); 
      } 

     }); 

रनटाइम त्रुटि पैदा करता है: java.lang.NullPointerException। समस्या कहाँ हे?

+0

अपने LogCat पोस्ट करें और हम उसकी समीक्षा करेंगे –

उत्तर

4

उपयोग इस ..

builder.setPositiveButton("Add", new DialogInterface.OnClickListener() { 
     @Override 
     public void onClick(DialogInterface dialog, int which) { 
        EditText text = (EditText) dialog.findViewById(R.id.editText1); 
        Toast.makeText(getApplicationContext(), text.getText(), Toast.LENGTH_SHORT).show(); 
     dialog.dismiss(); 
     } 

    }); 
1

यह मिला:

AlertDialog aDialog = (AlertDialog) dialog; 
EditText name = (EditText) aDialog.findViewById(R.id.editText1); 
संबंधित मुद्दे