2010-11-22 31 views
1

Aşağıdaki sahte kodum var. Android - onContextItemSelected içinde AlertDialog çalışmıyor

public boolean onContextItemSelected(MenuItem aItem) { 
     switch(aItem.getItemId()) { 
      case A: { 
       new AlertDialog.Builder(this) 
        .setIcon(android.R.drawable.ic_dialog_alert) 
        .setTitle("Delete") 
        .setMessage("Delete?") 
        .setPositiveButton("Yes", new DialogInterface.OnClickListener() { 
         @Override 
         public void onClick(DialogInterface dialog, int which) { 
          // do stuff A... 
         } 
        }); 

        // do stuff B... 

        return true; 
      } 
     } 
    } 

sorun

asla uyarı diyaloğu göstermesidir. Bununla birlikte, "B işlerini yapma" bölümünde belirtildiği gibi şeyler yapar.

AlertDialog'un neden şimdi gösterildiğini bilen var mı?

Teşekkür ederiz!

cevap

2

Eğer() sorunu :)

AlertDialog dialog = new AlertDialog.Builder(this) 
       .setIcon(android.R.drawable.ic_dialog_alert) 
       .setTitle("Delete") 
       .setMessage("Delete?") 
       .setPositiveButton("Yes", new DialogInterface.OnClickListener() { 
        @Override 
        public void onClick(DialogInterface dialog, int which) { 
         dialog.dismiss(); 
        } 
       }).create(); 
dialog.show(); 

çözecek .show) (.create gerekir Ve artık ihtiyacınız olmadığı zamanlarda) (reddedebilirsiniz.

Düzeltme: Üzgünüz. unuttum .create() :)

+0

Sanırım bir süredir hepimize oldu. – Cristian

+0

tamamen! ve sadece bir kez daha :) ben sık sık benim aramak için unuttum sayma durdu .show() ve merak ettim, ben sorunu bulup kendime kızana kadar: D –

+0

Merhaba, cevabınız için çok teşekkür ederim. İşe yaradı. Birkaç gün boyunca acı çektikten sonra aptal gibi hissediyorum. lol. Sanırım bir dahaki sefere hatırlayacağım. (Ben bir android newb;)) Teşekkürler! – the5threvolution

İlgili konular