在组视图上,单击侦听器不用于更改视图

时间:2014-12-15 22:30:58

标签: android expandablelistview

基本上我试图在群组点击时更改图像,但不成功。

我能够收到扩展和折叠组的正确日志,但ImageView没有根据它更新。

这是一个示例代码,我不确定它有什么问题:

private android.widget.ExpandableListView.OnGroupClickListener mGroupClickListener= new OnGroupClickListener() {
        @Override
        public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {

            Bitmap mBitmapCollapsed = BitmapFactory.decodeResource(getActivity().getResources(), R.drawable.ic_launcher);
            Bitmap mBitmapExpanded = BitmapFactory.decodeResource(getActivity().getResources(), R.drawable.ic_drawer);

            ImageView mImageView = (ImageView)v.findViewById(R.id.carat_imageView);

            if (parent.isGroupExpanded(groupPosition)) {

                parent.collapseGroup(groupPosition);
                Log.d("onGroupClick:", "groupCollapsed");
                mImageView.setImageBitmap(mBitmapCollapsed);

            } else {

               parent.expandGroup(groupPosition);
               Log.d("onGroupClick:", "groupExpanded");
               mImageView.setImageBitmap(mBitmapExpanded);

            }

            return false;
        }
    };

我无法在这里确定问题,似乎代码很好。

我们将非常感谢您的帮助。在此先感谢.. :))

1 个答案:

答案 0 :(得分:0)

实际找到了解决方案:

<强> onGroupView:

我将id设置为:

//isExpanded is a boolean in the onGroupView method

(!isExpanded) ? R.drawable.closed_icon: R.drawable.expanded_icon;

并将ImageView设置为:

mImageView.setImageResource(id);

希望这有助于某人...... :)