如何修复可扩展列表视图中的位置更改问题

时间:2016-08-16 20:49:02

标签: android expandablelistview

我想弄清楚如何解决Expandable listview中的位置变化问题。我有一个图像视图,包括两个图标,主要用于标记收藏和不喜欢。当我在下面的方法

中设置可扩展listview适配器中存在的imageview的onclick listner时
 @Override
    public View getGroupView(final int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
 if (convertView == null) {
            LayoutInflater inf = (LayoutInflater) context
                    .getSystemService(context.LAYOUT_INFLATER_SERVICE);
            convertView = lInflater.inflate(R.layout.myfav, parent, false);

        }

final ImageView         favourite_icon = (ImageView) convertView.findViewById(R.id.favourite_icon);
  favourite_icon.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
 ImageView imageView = (ImageView)expandableListView.getChildAt(groupPosition).findViewById(R.id.favourite_icon);


            imageView.setColorFilter(context.getResources().getColor(R.color.datedisplay),android.graphics.PorterDuff.Mode.MULTIPLY);
}});

位置出错,其他项目图标颜色也发生了变化。当我在这个lisview中滚动时,设置的图标色调会自动更改

1 个答案:

答案 0 :(得分:0)

可能是这样的:

        expandableListView.getChildAt(groupPosition)

使用子列表上的组索引,这将导致问题。