2015-04-15 29 views
5

ilk çocuğun ebeveyni üzerindeki removeView() çağırmalıdır ben ikinci kez, hata ile uygulama çöker aradığında:Benim bir uyarı iletişim kutusu var ve TextView ile metin alacak ama AlertView

04-15 19:37:48.433: E/AndroidRuntime(907): java.lang.IllegalStateException: 
    The specified child already has a parent. You must call removeView() on 
    the child's parent first. 

Benim Java kaynak:

public class MainActivity extends ActionBarActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     final RelativeLayout rLayout = (RelativeLayout) findViewById(R.id.relativeLayout); 
     Button btn1 = (Button) findViewById(R.id.button1); 
     final AlertDialog.Builder build = new AlertDialog.Builder(MainActivity.this); 
     build.setTitle("Ders Adı Giriniz"); 
     final EditText dersAdiGir = new EditText(MainActivity.this); 
     build.setView(dersAdiGir); 
     final LinearLayout layoutDers = (LinearLayout) findViewById(R.id.layoutDers); 

     build.setPositiveButton("Tamam", new DialogInterface.OnClickListener() { 

      @Override 
      public void onClick(DialogInterface dialog, int which) { 

       Editable girilenDers = dersAdiGir.getText(); 
       TextView tv1 = new TextView(MainActivity.this); 
       tv1.setText(girilenDers); 
       layoutDers.addView(tv1); 
       dialog.dismiss(); 
       build.create(); 

      } 
     }); 

     btn1.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       AlertDialog alert = build.create(); 
       alert.show(); 
      } 
     }); 




    } 
} 

bana yardım edin, Sen AlarmDialog her düğme tıklama yeni bir örneğini oluştururken tüm

cevap

9

teşekkürler. OnClickListener iç sınıfının dışına bir final AlarmDialog oluşturun.

 final AlertDialog alert = build.create(); 

     btn1.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       alert.show(); 
      } 
     }); 
+0

Wohoooooo:

İşte düzeltme var! Teşekkürler düzeltir :) –

+0

Dikkatli bir uyarı ile bir ViewHolder çalışmıyor AlertDialog.Builder – delive

+0

daha önce oluşturmama rağmen işe yaramadı –