1.设置横向滚动
LinearLayoutManager llm =new LinearLayoutManager(this);
llm.setOrientation(LinearLayoutManager.HORIZONTAL);
mBind.tabs.setLayoutManager(llm);
2.设置显示四个半item
//计算屏幕宽度,除以4.5,就是每个item的宽度
ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams((int)
(ctx.getResources().getDisplayMetrics().widthPixels / 4.5),
ViewGroup.LayoutParams.WRAP_CONTENT);
holder.itemView.setLayoutParams(layoutParams);
3.选中的item置于中间
int size = getItemCount();
//id为目标item的下标,view为itemview
if (id > 1 && id < size - 2) {//前两个item和最后两个item无法滚动至中间
WindowManager wm = (WindowManager) context.getSystemService(context.WINDOW_SERVICE);
DisplayMetrics dm = new DisplayMetrics();
wm.getDefaultDisplay().getMetrics(dm);
//item距离屏幕左边的距离-(屏幕宽度的一半减去item宽度的一半)就是它要滑动的距离
int gap = view.getLeft() - (dm.widthPixels / 2 - view.getWidth() / 2);
return gap;
}