Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何进行此可扩展回收视图_Android_Expandablelistview_Expandablelistadapter_Expandable - Fatal编程技术网

Android 如何进行此可扩展回收视图

Android 如何进行此可扩展回收视图,android,expandablelistview,expandablelistadapter,expandable,Android,Expandablelistview,Expandablelistadapter,Expandable,我试图创造这种效果: ==> 我在寻找一个我可以使用的图书馆,这样我就可以避免重新发明轮子。如果您有任何建议或建议,请让我知道 现在我正在使用expandablelistview并设法访问。如您所见,我无法将指示器放在右侧,列表项分隔符/分隔符很笨重。通过将我的第一个孩子视图作为整个事件的标题,我做到了这一点: @Override public View getChildView(int exerciseId, int setId, boolean b, View view, ViewGrou

我试图创造这种效果:

==>

我在寻找一个我可以使用的图书馆,这样我就可以避免重新发明轮子。如果您有任何建议或建议,请让我知道

现在我正在使用expandablelistview并设法访问。如您所见,我无法将指示器放在右侧,列表项分隔符/分隔符很笨重。通过将我的第一个孩子视图作为整个事件的标题,我做到了这一点:

@Override
public View getChildView(int exerciseId, int setId, boolean b, View view, ViewGroup parent) {
    Context parentContext = parent.getContext();
    int itemSetID = R.layout.item_exercise_set;

    if (view == null) 
        view = LayoutInflater.from(parentContext).inflate(itemSetID, parent, false);

    SetHolder holder = new SetHolder(view);
    if(setId == 0)
        holder.setTitle();
    else{
        Set set = (Set) getChild(exerciseId, setId - 1);
        holder.setSet(set);
    }

    return view;
}
我怎样才能做得更好?我正在努力让一切都干净而不复杂

非常感谢,,
Martin

可扩展列表视图一旦存在与之相关联的不同类型的子布局,就会变得非常复杂,因此获得相同效果的最佳替代方案是带有动画的RecyclerView,它提供了与具有RecyclerView所有增强功能的可扩展列表视图相同的效果

下面的博文清楚地解释了如何做到这一点,希望你能遵循这一点

您可以通过播放“可见性”来使用“回收器”视图来实现这一点,此外,它还允许您进行更多的自定义。由于集合的大小不是固定值,因此我将使用列表视图。换句话说,我必须在recyclerView的viewHolder中有一个recyclerView。这会不会使代码过于复杂,因为我将不得不管理另一个适配器?