3

我有一个可扩展的回收站视图,它会在我的活动开始时显示。但是默认情况下,父视图是折叠的。

我尝试在我的父视图持有者中设置 setExpanded(true) ,如下所示:

public PersonParentViewHolder(View itemView) {
    super(itemView);

    mPersonTitleTextView = (TextView) itemView.findViewById(R.id.parent_list_item_person_title_text_view);
    mParentDropDownArrow = (ImageButton) itemView.findViewById(R.id.parent_list_item_expand_arrow);
    setExpanded(true);
}

但这似乎没有帮助。

这是ParentViewHolder的创建

@Override
public PersonParentViewHolder onCreateParentViewHolder(ViewGroup viewGroup) {
    View view = mInflater.inflate(R.layout.person_parent_layout, viewGroup, false);

    return new PersonParentViewHolder(view);
}

如果有帮助的话,这里就是创建回收站视图的地方

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    View view = inflater.inflate(R.layout.person_fragment_layout, container, false);

    recyclerView = (RecyclerView) view
            .findViewById(R.id.person_recycler_view);
    recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));

    updateUI(view);

    return view;
}

提前致谢!

4

1 回答 1

4

我弄清楚我做错了什么。我使用的是 BigNerdRanch 的 ExpandableRecyclerView 的弃用版本。我能够通过更新到最新版本的 ExpandableRecyclerView 来扩展 ParentView。为此:

添加compile 'com.bignerdranch.android:expandablerecyclerview:2.1.1'到应用程序 gradle 的依赖项,并安装必要的包。

然后在实现的可扩展列表的父对象上,ParentListItem您需要覆盖isInitiallyExpanded这样的

@Override
public boolean isInitiallyExpanded() {
    return true;
}

这是 2.0.0 版左右的标准。

最新版本 (2.1.1) 的完整教程可以在这里找到。 http://bignerdranch.github.io/expandable-recycler-view/

希望这可以帮助!

于 2016-03-31T06:35:09.483 回答