本文介绍了分别用Kotlin和java写RecyclerView的示例,分享给大家,具体如下:

java:跟一般的写法一样,增加了按钮响应
MainActivity:
public class MainActivity extends AppCompatActivity implements RecyclerAdapter.OnItemClickListener{
private RecyclerView mRecyclerView;
private RecyclerView.LayoutManager mLayoutManager;
private RecyclerAdapter mRecyclerAdapter;
private ArrayListlist;
@Override
protected void onCreate(Bundlesaved InstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
RecyclerItem item;
list = new ArrayList<>();
item = new RecyclerItem();
item.setName("No."+0);
list.add(item);
mRecyclerView = findViewById(R.id.recyclerView);
mRecyclerAdapter = new RecyclerAdapter(this,list);
mRecyclerAdapter.setOnItemClickListener(this);
// 竖直方向的网格样式,每行一个Item
mLayoutManager=new GridLayoutManager(this,3,OrientationHelper.VERTICAL,false);
// 设置布局管理器
mRecyclerView.setLayoutManager(mLayoutManager);
// 设置adapter
mRecyclerView.setAdapter(mRecyclerAdapter);
// 设置Item添加和移除的动画
mRecyclerView.setItemAnimator(newDefaultItemAnimator());
}
//adapter的按钮点击事件
@Override
public void onItemContentClick(Viewview,intposition) {
//点击最后一个按钮增加一个item
if(position == list.size()-1) {
RecyclerItemitem=newRecyclerItem();
item.setName("No."+(position+1));
list.add(0,item);
//更新RecyclerView
mRecyclerAdapter.updateData(list);
}else{
Toast.makeText(this,"No."+position,Toast.LENGTH_SHORT).show();
}
}
}