Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.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 获取exapndablelistview的childitem的数据onClick事件的复选框_Android_Checkbox_Expandablelistview - Fatal编程技术网

Android 获取exapndablelistview的childitem的数据onClick事件的复选框

Android 获取exapndablelistview的childitem的数据onClick事件的复选框,android,checkbox,expandablelistview,Android,Checkbox,Expandablelistview,在我的应用程序中,我在childlist中有一个带有复选框的expandablelistview。 expandablelist视图的所有数据都是从webservice获取的 现在,我想获取选中复选框的特定子raw的数据,并且我必须执行多次选择操作。 我想,当选中复选框时,所选原始数据存储在数组中 以下是我的适配器类: @Override public View getChildView(int groupPosition, int childPosition,

在我的应用程序中,我在childlist中有一个带有复选框的expandablelistview。 expandablelist视图的所有数据都是从webservice获取的

现在,我想获取选中复选框的特定子raw的数据,并且我必须执行多次选择操作。 我想,当选中复选框时,所选原始数据存储在数组中

以下是我的适配器类:

@Override
    public View getChildView(int groupPosition, int childPosition,
                             boolean isLastChild, View convertView, ViewGroup parent)
    {

        ServiceChildList child = (ServiceChildList) getChild(groupPosition,
                childPosition);
        if (convertView == null)
        {
            LayoutInflater infalInflater = (LayoutInflater) context
                    .getSystemService(context.LAYOUT_INFLATER_SERVICE);
            convertView = infalInflater.inflate(R.layout.item_row, null);
        }
        TextView one = (TextView) convertView.findViewById(R.id.Subservicename);
        one.setText(child.getvName().toString());

        TextView two = (TextView) convertView.findViewById(R.id.Subservicetime);
        two.setText(child.getvDuration().toString());

        TextView three = (TextView) convertView.findViewById(R.id.Subserviceprice);
        three.setText("$" +child.getfPrice().toString()+".00");

        TextView four= (TextView)convertView.findViewById(R.id.Subserviceid);
        four.setText(child.getiSubServiceId().toString());

        CheckBox check=(CheckBox)convertView.findViewById(R.id.sub_check);

        check.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {

                CheckBox cb = (CheckBox) buttonView ;
                ServiceChildList cList = (ServiceChildList) cb.getTag();
                cList.setChecked( cb.isChecked() );

            }
        });
        check.setTag( child );
        // Display planet data
        check.setChecked( child.isChecked() );

        return convertView;

    }
这是我的活动课:

ExpandList.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {

            @Override
            public boolean onChildClick(ExpandableListView parent, View v,
                                        int groupPosition, int childPosition, long id)
            {

                ArrayList<ServiceChildList> ch_list = ExpListItems.get(groupPosition).getSub();

                int len = ExpandList.getChildCount();
                SparseBooleanArray checked = ExpandList.getCheckedItemPositions();
                for (int i = 0; i < len; i++)
                    if (checked.get(i)) {
                        String item = cont_list.get(i);
  /* do whatever you want with the checked item */
                    }


                String child_name = ch_list.get(childPosition).getvName();
                Log.d("dsijirji",child_name);
                String child_id = ch_list.get(childPosition).getiSubServiceId();
                Log.d("dsijirji",child_id);

                showToastMsg( child_id+"\n" + child_name);

                Toast.makeText(getApplicationContext(), child_name, Toast.LENGTH_SHORT ).show();
                Toast.makeText(getApplicationContext(), String.valueOf(groupPosition), Toast.LENGTH_SHORT ).show();
                return false;
            }
        });
ExpandList.setOnChildClickListener(新的ExpandableListView.OnChildClickListener(){
@凌驾
公共布尔onChildClick(ExpandableListView父视图,视图v,
int groupPosition、int childPosition、long id)
{
ArrayList ch_list=ExpListItems.get(groupPosition.getSub();
int len=ExpandList.getChildCount();
SparseBooleanArray checked=ExpandList.GetCheckEditePositions();
对于(int i=0;i
告诉我哪里出错了。帮我个忙。。
提前感谢。

查看此示例希望对您有所帮助查看此示例希望对您有所帮助