我需要根据 ExpandableListView 中的 groupPosition 和 childPosition 隐藏某些组的某些子项。但是在多次扩展组时(特别是当扩展组不在焦点时),我得到的 childPosition 的值与以前不同。所以不同的行被隐藏了。知道我如何每次都抓住合适的孩子吗?
现在我设置了一个高度为 0dp 的不同布局,因为如果我将 Visibility 设置为 View.GONE,它会将行显示为空白。
if (convertView == null) {
if (((m_Budget.budget_planTypeid.equals("budget_single")) || (m_Budget.budget_planTypeid.equals("budget_double")) // hide
// pets
|| (m_Budget.budget_planTypeid.equals("budget_singlefamily")) || (m_Budget.budget_planTypeid.equals("budget_doublefamily"))) && (groupPosition == 4)
&& (childPosition == 5)) {
convertView = inflater.inflate(R.layout.blankrow, parent, false);
} else if (((m_Budget.budget_planTypeid.equals("budget_single")) || (m_Budget.budget_planTypeid.equals("budget_double")) // hide
// child
// care
|| (m_Budget.budget_planTypeid.equals("budget_singlepet")) || (m_Budget.budget_planTypeid.equals("budget_doublepet"))) && (groupPosition == 3)
&& (childPosition == 6)) {
**convertView = inflater.inflate(R.layout.blankrow, parent, false);**
} else {
convertView = inflater.inflate(R.layout.budget_list_rowitem, parent, false);
}
粗体是空白行的布局。否则我设置一个通常的布局