这似乎是一个简单的解决方案,但似乎设置
private RecyclerView mRecyclerView;
private RecyclerView.Adapter mAdapter;
private LinearLayoutManager mLayoutManager;
.... // More code
mRecyclerView = (RecyclerView) rootView.findViewById(R.id.recycler_view);
// Add item decoration
mRecyclerView.addItemDecoration(new SpacesItemDecoration(DIVIDER_SPACE));
// use this setting to improve performance if you know that changes
// in content do not change the layout size of the RecyclerView
mRecyclerView.setHasFixedSize(true);
// use a linear layout manager
mLayoutManager = new LinearLayoutManager(getActivity());
mLayoutManager.setReverseLayout(true); // THIS ALSO SETS setStackFromBottom to true
mRecyclerView.setLayoutManager(mLayoutManager);
似乎还设置了从底部开始堆叠的项目
我尝试设置setStackFromBottom
为 false 但没有执行任何操作,反转项目顺序但仍从顶部填充的最佳方法是什么?我应该使用自定义比较器类吗?我希望这比创建另一个类更容易。
从文档中设置反向布局
用于反转项目遍历和布局顺序。这与 RTL 视图的布局更改类似。当设置为 true 时,第一个项目布置在 UI 的末尾,第二个项目布置在它之前,依此类推。对于水平布局,它取决于布局方向。当设置为true时,如果RecyclerView是LTR,那么它将从RTL布局,如果RecyclerView}是RTL,它将从LTR布局。如果您正在寻找完全相同的行为setStackFromBottom(boolean)
, use setStackFromEnd(boolean)
所以,也尝试使用setStackFromEnd(布尔值)在您的 LinearLayoutManager 实例上,
LinearLayoutManager mLayoutManager = new LinearLayoutManager(getActivity());
mLayoutManager.setReverseLayout(true);
mLayoutManager.setStackFromEnd(true);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)