【问题标题】:Disable collapsing of ExpandableListView禁用 ExpandableListView 的折叠
【发布时间】:2011-03-28 14:19:19
【问题描述】:

ExpandableListView 的默认行为是在单击标题时折叠组。是否有可能防止这种情况发生?

我试过了:

  • 在列表中设置OnTouchListener。这会干扰滚动。
  • 在列表中设置OnGroupClickListener(在onCreate() 中)。这适用于所有点击之后第一次。

还有其他人做到这一点吗?为什么OnGroupClickListener 可能会错过第一次点击?

提前感谢您的建议。

【问题讨论】:

标签: android android-widget expandablelistview


【解决方案1】:

您可以像这样忽略对组项目的点击:

mMyExpandableListView.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() {
  @Override
  public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {
      // Doing nothing
    return true;
  }
});

【讨论】:

    【解决方案2】:

    可能来不及了,我在activity中使用了onGroupCollapseListener,实现了onGroupCollapse方法。(expandView是ExpandableListView)

    @Override
    public void onGroupCollapse(int collapseIndex) {
        expandView.expandGroup(collapseIndex);
    }
    

    【讨论】:

    • 我认为这不应该实现!安德鲁斯的方式更好!
    【解决方案3】:

    您可以在要禁止点击的项目上使用此代码: {convertView.setClickable(false);}

    【讨论】:

    • 完美的代码,如果你想禁用点击特定条件
    【解决方案4】:

    似乎问题与组标题中的可聚焦元素和OnGroupClickListener 集合有关。删除监听器解决了我的问题。

    【讨论】:

    • 没有为我解决这个问题(我什至一开始都没有设置)。我有可点击的元素inside 标题,但标题本身不应该是可点击的。
    • OnGroupClickListener(null);
    猜你喜欢
    • 2011-08-16
    • 1970-01-01
    • 2015-11-18
    • 1970-01-01
    • 2016-07-18
    • 2011-05-17
    • 2011-08-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多