2012-05-09 2 views
0
final CharSequence[] items = {"Red", "Green", "Blue"} 

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

builder.setTitle("Pick a color"); 

builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() { 

    public void onClick(DialogInterface dialog, int item) { 

     Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show(); 
    } 
}); 

AlertDialog alert = builder.create(); 

私は(赤、緑、青)から値を選択すると、それはどのようにhelp.pleaseヘルプを削除する必要があります。進行状況ダイアログを削除する方法値を選択したら?

+3

dialog.dismiss()? –

+0

これは動作していません。 –

+0

alert.dismiss();あなたのダイアログ=警報。完全な回答については他の回答を参照してください。 –

答えて

2
builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() { 

    public void onClick(DialogInterface dialog, int item) { 
    //Here you gets dialog as argument 

     dialog.dismiss(); <--------- 
    } 
}); 
+0

ありがとうございました。 –

0

、それが動作するコードの下

final CharSequence[] items = {"Red", "Green", "Blue"} 
final AlertDialog alert = null; 
AlertDialog.Builder builder = new AlertDialog.Builder(this); 
builder.setTitle("Pick a color");  
builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() { 
    public void onClick(DialogInterface dialog, int item) { 

     Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show(); 
    alert.dismiss(); 
    } 
}); 
alert = builder.create(); 
alert.show(); 
+0

大変ありがとうございます。 –

0

を使用し、これを試してみてください。

public class TestingActivity extends Activity { 

    AlertDialog alert; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     // TODO Auto-generated method stub 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     final CharSequence[] items = { "Red", "Green", "Blue" }; 

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

     builder.setTitle("Pick a color"); 



     builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() { 

      public void onClick(DialogInterface dialog, int item) { 

       Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show(); 
         dismiss(); 
      } 

     }); 
     alert = builder.create(); 

     alert.show(); 
    } 

    private void dismiss() { 
     alert.dismiss(); 

    } 
    } 
関連する問題