Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android中的可扩展列表视图子项选择?_Android_Android Adapter_Android Adapterview - Fatal编程技术网

android中的可扩展列表视图子项选择?

android中的可扩展列表视图子项选择?,android,android-adapter,android-adapterview,Android,Android Adapter,Android Adapterview,在可展开列表视图中,根据父级设置数据。在此父项具有子项选择中,选择集为每个子项选择的图像视图。但在此选择中设置其他父项和子项 下面是父值集的代码。 @Override public View getGroupView(final int i, boolean b, View view, ViewGroup viewGroup) { GroupViewHolder groupViewHolder; if(view==null){ gr

在可展开列表视图中,根据父级设置数据。在此父项具有子项选择中,选择集为每个子项选择的图像视图。但在此选择中设置其他父项和子项

下面是父值集的代码。

@Override
    public View getGroupView(final int i, boolean b, View view, ViewGroup viewGroup) {
        GroupViewHolder groupViewHolder;
        if(view==null){
            groupViewHolder=new GroupViewHolder();
            view=((LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(R.layout.category_listview_group_item,null);
            groupViewHolder.name=(TextView)view.findViewById(R.id.category_listview_item_name);
            groupViewHolder.nameIcon=(ImageView)view.findViewById(R.id.category_listview_item_icon);
            groupViewHolder.progressBar = (ProgressBar)view.findViewById(R.id.categoryImageProgressBarlist);
            groupViewHolder.rigtharrow=(ImageButton)view.findViewById(R.id.category_listview_item_onclick);
            view.setTag(groupViewHolder);
        } else {
            groupViewHolder=(GroupViewHolder)view.getTag();
        }
        groupViewHolder.nameIcon =itemImage(view, R.id.category_listview_item_icon, data.get(i).getImageUrl(), groupViewHolder.progressBar);
        groupViewHolder.name.setText(data.get(i).getName());
        return view;
    }
下面是子项值集的代码

@Override
    public View getChildView(final int i, final int i1, boolean b,  View view, ViewGroup viewGroup) {
        final ChildViewHolder childViewHolder;
        String[] spinnerCount = {"1","2","3","4","5"};
        if(view==null) {
            childViewHolder = new ChildViewHolder();
            view = ((LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(R.layout.category_listview_child_item,null);
            childViewHolder.childName = (TextView)view.findViewById(R.id.listview_child_item_name);
            childViewHolder.childNamePrice = (TextView)view.findViewById(R.id.listview_child_item_price);
            childViewHolder.childNameIcon = (ImageView)view.findViewById(R.id.listview_child_item_icon);
            childViewHolder.spinner = (Spinner)view.findViewById(R.id.spinner);


           view.setTag(childViewHolder);

        }
        else {
            childViewHolder=(ChildViewHolder)view.getTag();
        }


        childViewHolder.childNameIcon.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (!childViewHolder.childNameIcon.isSelected()) {
                    childViewHolder.childNameIcon.setBackgroundResource(R.mipmap.yellow_circle_list_item);
                    childViewHolder.childNameIcon.setSelected(true);
                    //  childViewHolder.childNameIcon.setTag(R.mipmap.yellow_circle_list_item);
                    String quantity = childViewHolder.spinner.getSelectedItem().toString();
                    Products product = data.get(i).getProductsList().get(i1);
                    product.setQuantity(quantity);
                    dataHandler.addTempproducts(product);
                } else {
                    childViewHolder.childNameIcon.setBackgroundResource(R.mipmap.black_circle_list_item);
                    childViewHolder.childNameIcon.setSelected(false);
                    //  childViewHolder.childNameIcon.setTag(R.mipmap.black_circle_list_item);
                    dataHandler.removeTempProducts(data.get(i).getProductsList().get(i1));
                    Products product = data.get(i).getProductsList().get(i1);
                    product.setQuantity("1");
                 }
            }
        });


        ArrayAdapter<String> adapter = new ArrayAdapter<String>(context,android.R.layout.simple_spinner_item,spinnerCount);
        childViewHolder.spinner.setAdapter(adapter);

        childViewHolder.spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
                String spinnerCount = childViewHolder.spinner.getSelectedItem().toString();
                Products product = data.get(i).getProductsList().get(i1);
                ArrayList<Products> productList = new ArrayList<Products>();
                productList = dataHandler.getTempproducts();
                if (childViewHolder.childNameIcon.isSelected()) {
                    for (int k = 0; k < productList.size(); k++) {
                        if (data.get(i).getProductsList().get(i1).getId() == productList.get(k).getId()) {
                            productList.get(k).setQuantity(spinnerCount);
                        }
                    }
                } else {
                    product.setQuantity(spinnerCount);
                }
            }

            @Override
            public void onNothingSelected(AdapterView<?> arg0) {
                // TODO Auto-generated method stub
            }
        });


  childViewHolder.childName.setText(data.get(i).getProductsList().get(i1).getName());
        if(data.get(i).getProductsList().get(i1).getPrice().isEmpty()) {
            childViewHolder.childNamePrice.setText(data.get(i).getProductsList().get(i1).getPrice());
        } else {
            childViewHolder.childNamePrice.setText(data.get(i).getProductsList().get(i1).getPrice()+"/-");
        }

        return view;
    }
@覆盖
公共视图getChildView(最终整数i、最终整数i1、布尔b、视图视图、视图组视图组){
最终ChildViewHolder ChildViewHolder;
字符串[]喷丝头计数={“1”、“2”、“3”、“4”、“5”};
如果(视图==null){
childViewHolder=新的childViewHolder();
视图=((LayoutFlater)context.getSystemService(context.LAYOUT\u充气器\u SERVICE)).inflate(R.LAYOUT.category\u listview\u child\u项,空);
childViewHolder.childName=(TextView)view.findViewById(R.id.listview\u child\u item\u name);
childViewHolder.childNamePrice=(TextView)view.findViewById(R.id.listview\u child\u item\u price);
childViewHolder.childNameIcon=(ImageView)view.findViewById(R.id.listview\u child\u item\u icon);
childViewHolder.spinner=(spinner)view.findViewById(R.id.spinner);
view.setTag(childViewHolder);
}
否则{
childViewHolder=(childViewHolder)view.getTag();
}

childViewHolder.childNameIcon.setOnClickListener(新视图.OnClickListener(){ @凌驾 公共void onClick(视图v){
如果(!childViewHolder.childNameIcon.isSelected()){
childViewHolder.childNameIcon.setBackgroundResource(R.mipmap.yellow\u circle\u list\u项);
childViewHolder.childNameIcon.setSelected(true);
//childViewHolder.childNameIcon.setTag(R.mipmap.yellow\u circle\u list\u项); 字符串数量=childViewHolder.spinner.getSelectedItem().toString(); Products product=data.get(i).getProductsList().get(i1); 产品设置数量(数量); dataHandler.addTempproducts(产品); }否则{
childViewHolder.childNameIcon.setBackgroundResource(R.mipmap.black\u circle\u list\u项);
childViewHolder.childNameIcon.setSelected(false);
//childViewHolder.childNameIcon.setTag(R.mipmap.black\u circle\u list\u项); removeTempProducts(data.get(i).getProductsList().get(i1)); Products product=data.get(i).getProductsList().get(i1); 产品设定数量(“1”); } } }); ArrayAdapter=新的ArrayAdapter(上下文,android.R.layout.simple\u spinner\u项,spinnerCount); childViewHolder.spinner.setAdapter(适配器); childViewHolder.spinner.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener(){ @凌驾 已选择公共视图(AdapterView arg0、视图arg1、内部arg2、长arg3){ 字符串spinnerCount=childViewHolder.spinner.getSelectedItem().toString(); Products product=data.get(i).getProductsList().get(i1); ArrayList productList=新的ArrayList(); productList=dataHandler.getTempproducts();
if(childViewHolder.childNameIcon.isSelected()){ 对于(int k=0;k

请帮助我,我是这里的结构……

请更清楚地表达您的问题,并显示您的代码。
在可展开列表视图中,根据父级设置数据。在此父项具有子项选择中,选择集为每个子项选择的图像视图。但在此选择中设置其他父项和子项
。如前所述:重新措辞你的文本。我们不明白你想说什么。childViewHolder.childNameIcon.setOnClickListener图像视图设置在childNameIcon中,单击图像时将背景色设置为黄色,再次单击同一图像视图时将背景色设置为棕色,而我第一次单击图像时将背景色更改为黄色,但这里黄色也被设置到另一个父项最后一个子项中,这是我的问题我选择父组中的子项,该选择也被设置到另一个父项子项中。这就是问题所在。