0

我在每个项目中有一个带有复选框和 TextView 的自定义列表视图。最初我将复选框的可见性设置为 GONE。

在我点击按钮的活动中,所有项目中的复选框都会出现,然后再次点击所有复选框就会消失(就像一个切换按钮)。

我已经成功实现了一个小问题:

在此处输入图像描述

在这里,在第一张图片中,当我单击切换按钮时,复选框没有出现。它们仅在我滚动时出现(第二张图片)。单击按钮后,当前视图中的项目不会更新其可见性,因为只有在我们滚动时才会调用 getView。

我只想在单击按钮时删除当前视图中的复选框。

这是我的代码:

public View getView(final int index, View convertView, ViewGroup parent) {
   final ViewHolder holder;
   ...
   ...
   if(myActivity.buttonFlag)
      holder.myCheckBox.setVisibility(View.VISIBLE);
   else
      holder.myCheckBox.setVisibility(View.GONE);
   return convertView;
   }
static class ViewHolder
{
    CheckBox myCheckBox;
}

buttonFlag是一个布尔值,在单击按钮时将其值设置为 true/false。按钮单击和buttonFlag值在 Activity 中设置。

4

1 回答 1

0

似乎notifyDataSetChanged()应该从切换按钮处理程序调用 to 以使列表刷新其内容。

于 2012-09-03T11:59:38.277 回答