最佳答案
我有一个片段,其中有 RecyclerView
与 LinearLayoutManager
,其中有 CardView
项目。在单击哪些项目应该滚动到顶部时,有一个浮动操作按钮。我已经尝试使用 scrollToPosition
以及 scrollToPositionWithOffset
与 RecyclerView
,也与 LinearLayoutManager
如下所示。但是一点效果都没有。为什么会这样?有人能帮帮我吗。
我已经将 RecyclerView
直接放在 xml 文件中的 SwipeRefreshView
中。一旦适配器设置为 RecyclerView
,我就呼叫 setFloatingActionButton
。
public void setFloatingActionButton(final View view) {
float = (android.support.design.widget.FloatingActionButton) getActivity().findViewById(R.id.float);
float.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mRecyclerView.smoothScrollToPosition(0);
android.support.design.widget.Snackbar.make(view, "Scrolled to Top", android.support.design.widget.Snackbar.LENGTH_SHORT)
.setAction("Ok", new View.OnClickListener() {
@Override
public void onClick(View v) {
LinearLayoutManager llm = (LinearLayoutManager) mRecyclerView.getLayoutManager();
llm.scrollToPosition(0);
}
})
.setActionTextColor(getActivity().getResources().getColor(R.color.coloLink))
.show();
}
});
}