2012-09-11 78 views
1

我有一个alertdialog的任何选项和2个按钮。当我按下第二个按钮(只停止声音)时,我不想关闭对话框。不要关闭alertdialog通过点击一个按钮 - Android的

是否有任何属性保持对话框打开?

非常感谢!

代码:

 public void creaDialogTo(){ 

      final String[] tonos = {"thinks.mp3", "life.mp3", "war.mp3"}; 

      AlertDialog.Builder builder = new AlertDialog.Builder(this); 

      builder.setTitle("Select"); 
      builder.setCancelable(false); 
      builder.setSingleChoiceItems(tones, -1,new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int item) { 
        tone=tones[item]; 
        sound1 =new SoundManager(getApplicationContext()); 
        sound1.loadSound(tones[item]); 


       } 
      }); 
      builder.setPositiveButton("Confirm", 
        new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface dialog, int id) { 
          pref.setTone(tone); 

          sound1.stopsound(); 

         } 
        }); 
      builder.setNeutralButton("Stop sound", 
        new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface dialog, int id) { 
         sound1.stopsound(); 

         } 
        }); 
      AlertDialog alert = builder.create(); 
      alert.show(); 

    } 
+0

可以发布代码你正在使用的警报对话框 –

+0

@Ramkiran谢谢你,这是代码 –

+0

然后调用builder.dismiss()只在确认按钮。无需调用停止按钮的解除方法 –

回答

5

我猜,你是显示AlertDialog,具有正负默认的按钮。相反,您可以创建一个对话框,并将该对话框的布局设置为contentView,并手动设置两个按钮。这里您需要定义按钮单击事件的所有定义,并且不会出现默认按钮。所以,如果你没有关闭按钮上的对话框,只需点击按钮,不要调用dialog.dismiss()。

编辑:中性按钮默认关闭对话框,尝试将其改为负面按钮,如果它仍然不会工作,那么请申请解决方案,我已经在上面写过。

+1

负向按钮也是一样的:( –

+0

请创建一个对话框,并将该对话框的ContentView设置为具有这些按钮的布局。 – jeet

+0

Tnak you so much that @jeet !! –