点击按钮之后弹出多选框,并将选择的值用对话框弹出
在前面定义这两个数组:
private String[] item = new String[] { "住宅区", "商业区", "餐饮区", "工作区", "夜市区","其他区" }; boolean[] selected = new boolean[] { false, false, false, false, false,false };
在 protected void onCreate(Bundle savedInstanceState)函数里面实现如下代码
checkBt = (Button) findViewById(R.id.btnCheck); checkBt.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Builder builder = new AlertDialog.Builder(MainActivity.this); builder.setTitle("搜索框"); DialogInterface.OnMultiChoiceClickListener mutiListener = new DialogInterface.OnMultiChoiceClickListener() { @Override public void onClick(DialogInterface dialogInterface, int which, boolean isChecked) { selected[which] = isChecked; } }; builder.setMultiChoiceItems(item, selected, mutiListener); DialogInterface.OnClickListener btnListener = new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int which) { String selectedStr = ""; int count = 0; for (int i = 0; i < selected.length; i++) { if (selected[i] == true) { selectedStr = selectedStr + " " + item[i]; count = count + 1; } } if(count != 0) new AlertDialog.Builder(MainActivity.this).setMessage(selectedStr).show(); else new AlertDialog.Builder(MainActivity.this).setMessage("你未选择任何选项!").show(); } }; builder.setPositiveButton("确定", btnListener); builder.setNegativeButton("取消", null); AlertDialog dialog=builder.create(); dialog.show(); } });
运行结果:
- 选定住宅区和其他区
2.点击确定之后的页面