我们可以停止一个 groupview 在触摸它时不显示它的 childList(对于某些特定情况)
Posted
技术标签:
【中文标题】我们可以停止一个 groupview 在触摸它时不显示它的 childList(对于某些特定情况)【英文标题】:Can we stop a groupview not to show its childList when touched on it (For some specific cases) 【发布时间】:2019-09-19 18:33:41 【问题描述】:在我的项目中,可扩展列表视图对所有登录都是通用的,但在新的更新中,基于登录用户的角色,我想停止显示某些组视图的子视图。我设法放置了一个“拒绝访问”对话框,但我无法停止 groupview 的扩展或显示子视图。有办法吗?
我尝试将角色传递给 expandableListAdapter 类的适配器,并在 getChildView 中编写一些案例,例如 if (groupPosition==1 && role == 1) 我膨胀了一个空布局。这样我无法阻止扩展,子视图仍在显示,但它是空的,点击它,它会抛出空指针异常。
【问题讨论】:
【参考方案1】:我找到了一种方法,我为我的特定案例返回了孩子计数 0
@Override
public int getChildrenCount(int groupPosition)
Log.e("getChildrenCount", "getChildrenCount");
if ((this.listDataChild.get(this.listDataHeader.get(groupPosition)) == null)
|| (roleId.equalsIgnoreCase("2") && groupPosition!=1)
|| (roleId.equalsIgnoreCase("3") && groupPosition!=2)
|| (roleId.equalsIgnoreCase("5") && groupPosition!=4) )
return 0;
else
return this.listDataChild.get(this.listDataHeader.get(groupPosition)).size();
这对我有用 谢谢
【讨论】:
以上是关于我们可以停止一个 groupview 在触摸它时不显示它的 childList(对于某些特定情况)的主要内容,如果未能解决你的问题,请参考以下文章
AVAudioPlayer UIButton - 第二次触摸停止当前音频播放