我有一个RecyclerView
,其中使用了LinearLayoutManager
和一个具有不同高度的项的适配器。是否有一种方法可以告诉RecyclerView
将滚动位置设置为X项(或者更多)几乎完全出现在屏幕底部?
我尝试过LinearLayoutManager.scrollToPosition()
,但这会将该项定位到视图顶部。
我有一个RecyclerView
,其中使用了LinearLayoutManager
和一个具有不同高度的项的适配器。是否有一种方法可以告诉RecyclerView
将滚动位置设置为X项(或者更多)几乎完全出现在屏幕底部?
我尝试过LinearLayoutManager.scrollToPosition()
,但这会将该项定位到视图顶部。
MyAdapter mAdapter;
RecyclerView recyclerView;
List<ItemData> data = new ArrayList<>();
LinearLayoutManager llm = new LinearLayoutManager(this);
在OnCreate方法中尝试这个
recyclerView = (RecyclerView) findViewById(R.id.recycler_view);
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(llm);
llm.setStackFromEnd(true);
mAdapter = new MyAdapter(data, getApplication());
recyclerView.setAdapter(mAdapter);
mAdapter.notifyItemInserted(data.size() - 1);
llm.scrollToPosition(data.size() - 1);
尝试在mainActivity.class中使用以下代码:
rv_journey.setAdapter(ca);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
scrollList();
}
}, 500);
private void scrollList(){
rv_journey.post(new Runnable() {
@Override
public void run() {
// Call smooth scroll
rv_journey.smoothScrollToPosition(Index);
}
});
}
if (Condition) {
mainActivity.Index=position+1;
}
}
愉快的编程...
scrollToPosition()
将项目定位在视图顶部。我想要相反的效果。 - Kirill Rakhman