一种方法是将显示宽度除以项目计数。
在您的适配器中,您有方法,从那里您可以获得项目数
@Override
public int getItemCount() {
return your_items.length;
}
并onCreateViewHolder
可以更改项目布局的宽度
@Override
public MyAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent,
int viewType) {
// create a new view
View v = LayoutInflater.from(parent.getContext())
.inflate(R.layout.item_view, parent, false);
//get device screen width
int width = Resources.getSystem().getDisplayMetrics().widthPixels;
//set your item view width
v.getLayoutParams().width = width / getItemCount() ;
MyViewHolder vh = new MyViewHolder(v);
return vh;
}
未经测试,但应该可以。