1.解决下拉刷新的冲突
http://blog.csdn.net/jdsjlzx/article/details/50783991
2. 判断RecycleView 是否滑动到最底端
LinearLayoutManager layoutManager = (LinearLayoutManager) recyclerView.getLayoutManager();
//添加滚动监听器
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
// 当不滚动时
if (newState == AbsListView.OnScrollListener.SCROLL_STATE_IDLE) {
// 判断是否滚动到底部
//得到可见视图项最底层id
int lostPos = layoutManager.findLastVisibleItemPosition();
if (lostPos == layoutManager.getItemCount() - 1) {
//Toast.makeText(ShowActivity.this, "最后:" + lostPos, Toast.LENGTH_SHORT).show();
}
}
}
});
3.动态设置 大小
for(int i=0; i<adapter1.getItemCount(); i++) {
View listItem=recyclerView1.findViewHolderForAdapterPosition(i).itemView;
listItem.measure(0, 0);
totalHeight += listItem.getMeasuredHeight();
}
ViewGroup.LayoutParams params = recyclerView1.getLayoutParams();
params.height = totalHeight + (recyclerView1.getDividerHeight() * (listAdapter.getCount() - 1));
//recyclerView1.getDividerHeight()获取子项间分隔符占用的高度
//params.height最后得到整个recyclerView1完整显示需要的高度
recyclerView1.setLayoutParams(params);