应用场景:参考的效果是2345天气app的侧边栏的收藏城市列表的效果
想做出来的效果是:当rv(RecyclerView)的item数量达到某个值时,固定rv布局列表的高度,多出来的item在rv的布局里上下滑动:
效果步骤:1.在xml里布局里RecyclerView的layout_height一定要设置wrap_content,如图所示:
第二步:Java代码
void editRvHeight() {
//编辑的rv
RecyclerView.Adapter editAdapter = mRvEditCollect.getAdapter();
int itemCount2 = editAdapter.getItemCount();
if (itemCount2 > 0) {
RecyclerView.ViewHolder editHolder = editAdapter.createViewHolder(mRvEditCollect, editAdapter
.getItemViewType(1));
editAdapter.onBindViewHolder(editHolder, 1);
editHolder.itemView.measure(
View.MeasureSpec.makeMeasureSpec(mRvEditCollect.getWidth(), View.MeasureSpec.EXACTLY),
View.MeasureSpec.makeMeasureSpec(1, View.MeasureSpec.UNSPECIFIED));
editHolder.itemView.layout(1, 1, editHolder.itemView.getMeasuredWidth(),
editHolder.itemView.getMeasuredHeight());
editHolder.itemView.setDrawingCacheEnabled(true);
editHolder.itemView.buildDrawingCache();
int measuredHeight = editHolder.itemView.getMeasuredHeight();
LinearLayout.LayoutParams editLeftLayoutParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
measuredHeight * 10);
mRvEditCollect.setLayoutParams(editLeftLayoutParams);
}
}
效果就是类似吸顶的哪种效果,其实也不是,数量到达一定高度,固定高度内进行滑动,步影响其它的功能区域
效果画面图:
有问题加我的技术讨论群:进行讨论:
qq群:620211664,
我的qq号:1393508286