public class MyRecyclerAdapter
extends RecyclerView.Adapter<MyRecyclerAdapter.MyViewHolder> {
private List<String>
list;
public MyRecyclerAdapter(List<String> list) {
// TODO Auto-generated constructor stub
this.
list = list
;
}
class MyViewHolder
extends RecyclerView.ViewHolder{
TextView
tv;
public MyViewHolder(View view) {
super(view)
;
tv = (TextView)view.findViewById(android.R.id.
text1)
;
}
}
@Override
public int getItemCount() {
// TODO Auto-generated method stub
return list.size()
;
}
@Override
public void onBindViewHolder(MyViewHolder holder
, int position) {
//绑定数据
holder.
tv.setText(
list.get(position))
;
}
@Override
public MyViewHolder
onCreateViewHolder(ViewGroup viewGroup
, int arg1) {
// 创建ViewHolder
MyViewHolder holder =
new MyViewHolder(View.
inflate(viewGroup.getContext()
, android.R.layout.
simple_list_item_1, null))
;
return holder
;
}
}
public class MyStaggedRecyclerAdapter
extends RecyclerView.Adapter<MyStaggedRecyclerAdapter.MyViewHolder> {
private List<String>
list;
private List<Integer>
heights;
public MyStaggedRecyclerAdapter(List<String> list) {
// TODO Auto-generated constructor stub
this.
list = list
;
heights =
new ArrayList<Integer>()
;
for (
int i =
0; i < list.size()
; i++) {
heights.add((
int)(
200+Math.
random()*
50))
;
}
}
class MyViewHolder
extends RecyclerView.ViewHolder{
TextView
tv;
public MyViewHolder(View view) {
super(view)
;
tv = (TextView)view.findViewById(android.R.id.
text1)
;
}
}
@Override
public int getItemCount() {
// TODO Auto-generated method stub
return list.size()
;
}
@Override
public void onBindViewHolder(MyViewHolder holder
, int position) {
//绑定数据
ViewGroup.LayoutParams params = holder.
tv.getLayoutParams()
;
params.
height =
heights.get(position)
;
// holder.tv.setBackgroundColor(Color.rgb(100, (int)(Math.random()*255), (int)(Math.random()*255)));
holder.
tv.setLayoutParams(params)
;
holder.
tv.setText(
list.get(position))
;
}
@Override
public MyViewHolder
onCreateViewHolder(ViewGroup viewGroup
, int arg1) {
// 创建ViewHolder
MyViewHolder holder =
new MyViewHolder(View.
inflate(viewGroup.getContext()
, android.R.layout.
simple_list_item_1, null))
;
return holder
;
}
}
private static final long serialVersionUID = -
2862585049955236662L;
private RecyclerView
recylerview;
private ArrayList<String>
list;
// private MyRecyclerAdapter adapter;
private MyRecyclerAdapter
adapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState)
;
setContentView(R.layout.
activity_main_v1)
;
//获取当前一个对象的
list =
new ArrayList<String>()
;
for (
int i =
0; i <
60; i++) {
list.add(
"item"+i)
;
}
recylerview = (RecyclerView)findViewById(R.id.
recylerview)
;
// adapter = new MyRecyclerAdapter(list);
// adapter = new MyStaggedRecyclerAdapter(list);
adapter =
new MyRecyclerAdapter(
list)
;
// recylerview.setLayoutManager(new LinearLayoutManager(this));
//reverseLayout:数据倒置,从右边开始滑动
// recylerview.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, true));
recylerview.setLayoutManager(
new StaggeredGridLayoutManager(
3, LinearLayoutManager.
VERTICAL))
;
recylerview.setAdapter(
adapter)
;
}
转载请注明原文地址: https://ju.6miu.com/read-673615.html