AlertDialog中的ListView

我在AlertDialog中使用ListView来显示项目列表。 当用户点击其中一个项目时,我想closures对话框。 我不会有对话框上的任何操作button。 任何想法,我会如何做到这一点?

Solutions Collecting From Web of "AlertDialog中的ListView"

你应该能够做到这样的事情:

final CharSequence[] items = {"Foo", "Bar", "Baz"}; AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Make your selection"); builder.setItems(items, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int item) { // Do something with the selection } }); AlertDialog alert = builder.create(); alert.show(); 

这个页面还有其他一些不同types的对话框的例子。

popup警告对话框时,可以使用布局。以这种方式设置样式更容易。 对于警报对话框中的列表,你可以做这样的事情

用于以下代码在AlertDialog中显示自定义列表

 AlertDialog.Builder builderSingle = new AlertDialog.Builder( DialogActivity.this); builderSingle.setIcon(R.drawable.ic_launcher); builderSingle.setTitle("Select One Name:-"); final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>( DialogActivity.this, android.R.layout.select_dialog_singlechoice); arrayAdapter.add("Hardik"); arrayAdapter.add("Archit"); arrayAdapter.add("Jignesh"); arrayAdapter.add("Umang"); arrayAdapter.add("Gatti"); builderSingle.setNegativeButton("cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); builderSingle.setAdapter(arrayAdapter, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { String strName = arrayAdapter.getItem(which); AlertDialog.Builder builderInner = new AlertDialog.Builder( DialogActivity.this); builderInner.setMessage(strName); builderInner.setTitle("Your Selected Item is"); builderInner.setPositiveButton("Ok", new DialogInterface.OnClickListener() { @Override public void onClick( DialogInterface dialog, int which) { dialog.dismiss(); } }); builderInner.show(); } }); builderSingle.create(); builderSingle.show();