如何使用复选框列表视图上工作了MultipleChoice过滤器 [英] How to work out MultipleChoice filters on Listview using checkbox

查看:118
本文介绍了如何使用复选框列表视图上工作了MultipleChoice过滤器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有不同类别的像ID,姓名,性别,地域,种姓,宗教的过滤器。现在,我想使用多重选择器显示复选框,我怎么能制定出具有多种选择的过滤器,因为有很多类型的过滤器,这样置换和放大器;组合是最差的。
目前,我带过滤器的单一选择(1复选框真正在同一时间)完成的。


解决方案

 字符串str [] =新的String [('Z' - 'A')+ 1];
布尔selectedItems [] =新的布尔[str.length]
保护的ArrayList<&CharSequence的GT; selectedChars =新的ArrayList<&CharSequence的GT;();
私人AlertDialog alertBox;私人无效showSpinner(){    AlertDialog.Builder alertBuilder =新AlertDialog.Builder(本);    INT A = 0;
    对于(字符C ='A'; C<'Z'; C ++){
        STR [A +] =将String.valueOf(C);
    }
    布尔[] = checkedChars新的布尔[str.length]
    诠释计数= str.length;
    的for(int i = 0; I<计数;我++)
        checkedChars [I] = selectedChars.contains(STR [I]);    alertBuilder.setTitle(选择国家);
    alertBuilder.setCancelable(真);
    alertBuilder.setMultiChoiceItems(STR,selectedItems,
            新OnMultiChoiceClickListener(){                @覆盖
                公共无效的onClick(DialogInterface对话,诠释它,
                        布尔器isChecked){
                    如果(器isChecked)
                        selectedChars.add(STR [它]);
                    其他
                        selectedChars.remove(STR [它]);
                }
            });    alertBox = alertBuilder.create();
    alertBox.show();
}

将JST显示与多张的选择选项微调。

I have different categories of filters like id, name, gender, area, caste, religion. Now i want to use multiple choice filters showing checkboxes, how can i work out with multiple choice filters because there are many kind of filters so permutation & combination is worst for it. currently i am done with single selection of filter (1 checkbox true at a time).

解决方案

String str[] = new String[('Z' - 'A') + 1];
boolean selectedItems[] = new boolean[str.length];
protected ArrayList<CharSequence> selectedChars = new ArrayList<CharSequence>();
private AlertDialog alertBox;

private void showSpinner() {

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

    int a = 0;
    for (char c = 'A'; c < 'Z'; c++) {
        str[a++] = String.valueOf(c);
    }
    boolean[] checkedChars = new boolean[str.length];
    int count = str.length;
    for (int i = 0; i < count; i++)
        checkedChars[i] = selectedChars.contains(str[i]);

    alertBuilder.setTitle("Select Country");
    alertBuilder.setCancelable(true);
    alertBuilder.setMultiChoiceItems(str, selectedItems,
            new OnMultiChoiceClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which,
                        boolean isChecked) {
                    if (isChecked)
                        selectedChars.add(str[which]);
                    else
                        selectedChars.remove(str[which]);
                }
            });

    alertBox = alertBuilder.create();
    alertBox.show();
}

it will jst display the spinner with mulitple selection options.

这篇关于如何使用复选框列表视图上工作了MultipleChoice过滤器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆