【问题标题】:how to collapse all childviews on expandable recycler view如何折叠可扩展回收器视图上的所有子视图
【发布时间】:2016-04-08 10:27:50
【问题描述】:

我的可扩展 recyclerview 设置有两种布局 HEADER 和 CHILD。一切正常。

here is my screen shot.

我为标题和子项使用了不同的布局。

当用户单击一个标题时,我希望我的程序检查是否扩展了任何其他标题。如果是,则需要折叠。在单击一个菜单时,最后一个展开的视图应该折叠起来。

我尝试过使用布尔标志。 谁能帮帮我

【问题讨论】:

标签: android expandablerecyclerview


【解决方案1】:

如果您使用此 library 来创建您的可扩展部分,如在此 example 中,您可以遍历您的 ExpandableContactsSection 的实例并检查标志“已扩展”。

【讨论】:

  • 酷,那你能考虑接受我的回答吗?您可以点击左侧的勾号
【解决方案2】:

如果您有布尔标志,请保存展开折叠状态。您可以编写一个函数来迭代您的数据集 ArrayList 并将其设置为 false/true 并调用

adapter.notifyDatasetChanged();

【讨论】:

    【解决方案3】:

    使用 Big Nerd Ranch recycler:expand library ('com.bignerdranch.android:expandablerecyclerview:1.0.3')

    在 RecyclerAdapter.Java 代码中...

     @Override
    public void onParentItemClickListener(int position) {
        /**
         * @Params
         * Se comienza en -1, al clickear el primer grupo, se registra en la variable su posicion
         * al clickear el siguiente grupo, si la variable no es igual a su posicion se procede a
         * cerrar el grupo anterior.
         * */
    
        Object parent = mParentItemList.get(position);
        //Toast.makeText(mContext,"posicion "+String.valueOf(position),Toast.LENGTH_SHORT).show();
    
        if(lastExpanded == -1){
            lastExpanded = position;
    
        } else if(lastExpanded == position){
            lastExpanded = -1; //Reinicia Variable
    
            notifyItemChanged(position);
        }else{
            //Cierra grupo abierto
            int oldExpand = lastExpanded;
            Toast.makeText(mContext,"se cerro  "+String.valueOf(oldExpand),Toast.LENGTH_SHORT).show();
            lastExpanded = position;
    
            //Need the colapse group code
    
            notifyItemChanged(oldExpand);
            notifyItemChanged(position);
        }
    
        super.onParentItemClickListener(position);
    }
    

    单击另一个 parentGroup 后我需要如何折叠组...

    如果你有解决办法,请评论我

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-23
      • 1970-01-01
      • 1970-01-01
      • 2010-11-25
      相关资源
      最近更新 更多