我的baseExpandableList ExpandableListView
中有一个getGroupView(
,这是我的Adapter
)方法。当我设置holder2.mPackagenameTv.setVisibility(View.INVISIBLE)
时,它完美无缺。 ExpandableListView
中的所有项目都是不可见的。问题是当我点击Button
时,我需要它来执行此操作。所以我有一个onClickListener
,当我使用相同的holder2.mPackagenameTv.setVisibility(View.INVISIBLE);
时,它只会使其中一个项目不可见而不是隐藏所有项目。
我将附上下面的图片以提供更多背景信息。
@Override
public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
//GroupViewHolder holder;
if (convertView == null) {
convertView = LayoutInflater.from(JunkCleanActivity.this)
.inflate(R.layout.group_list, null);
holder2 = new GroupViewHolder();
holder2.mPackageNameTv = (TextView)convertView.findViewById(R.id.package_name);
//holder2.mPackageNameTv.setVisibility(View.INVISIBLE);
//this hides all the package names but only here. it only hides single names in other sections of code
holder2.mPackageNameTv.setTypeface(shimmer2);
holder2.mPackageSizeTv = (TextView)convertView.findViewById(R.id.package_size);
holder2.mPackageSizeTv.setTypeface(shimmer2);
convertView.setTag(holder2);
} else {
holder2 = (GroupViewHolder)convertView.getTag();
}
JunkGroup group = mJunkGroups.get(groupPosition);
holder2.mPackageNameTv.setText(group.mName);
holder2.mPackageSizeTv.setText(CleanUtil.formatShortFileSize(JunkCleanActivity.this, group.mSize));
return convertView;
}
答案 0 :(得分:0)
它只隐藏一个项目可能是因为您没有定位整个项目列表。我的猜测是你只针对一个项目。请发布使用onclickListener
的完整代码,以便我们深入解决此问题。