以下是recyclerview的壹些用法:
活動:
recycle view =(recycle view)view . findviewbyid(r . id . list _ BTN);//取得控制權
recycle view . setlayoutmanager(new GridLayoutManager(activity,3));//設置布局
home BTN adapter = new home BTN adapter(recycle view);//設置適配器
//Divide line build . grad le Add dependency compile ' com . yqritc:recycler view-flexible divider:1 . 3 . 0 '
recyclerView.addItemDecoration(新HorizontalDividerItemDecoration。建設者(活動。這個)。build());
recycle view . setitem animator(new defaultitem animator());//設置消失動畫。
recycle view . set adapter(home BTN adapter);//添加適配器
Homebtnadapter。setonrvitemcliclistener(new bgaonritemcclicklistener(){//item click事件。
@覆蓋
public void onvitemclick(View group View group,View view,int i) {
if(null!= homeBtnAdapter & amp& amphome BTN adapter . getitemcount()& gt;0 & amp& ampnull!=活動& amp& amp!activity.isFinishing()){
home BTN entity = home BTN adapter . getitem(I);//獲取點擊的項目
if(null!實體& amp& ampnull!= entity.getCls()) {
Click事件的實現
}
}
}
});
適配器:
公共類HomeBtnAdapter擴展BGARecyclerViewAdapter & ltHomeBtn & gt{//適配器繼承BGARecyclerViewAdapter。
私有LinearLayout。LayoutParams參數;//定義適配器的布局
公共home tnadapter(recycler view recycler view){
super(recyclerView,r . layout . home _ home _ BTN _ item);//定義項目的樣式。
params =新的線性布局。LayoutParams(LinearLayout。LayoutParams.MATCH_PARENT,LinearLayout。layout params . WRAP _ CONTENT);//初始化布局
}
@覆蓋
受保護的void fill data(BGAViewHolderHelper BGAViewHolderHelper,int i,HomeBtn entity) {
((linear layout)bgaviewholderhelper . get view(r . id . ll _ BTN))。setLayoutParams(params);
//背景顏色
bgaviewholderhelper . set background color(r . id . ll _ BTN,entity . getbackcolorid());
//文本
字符串名稱= (null!實體& amp& amp!textutils . isempty(entity . getname()))?entity . getname():" ";
bgaviewholderhelper . settext(r . id . text _ name,name);
//圖標
bgaviewholderhelper . set image resource(r . id . img _ name,entity . getimgresourceid());
}
}
以上代碼僅供參考!
如果壹定要用listview,給他加壹個setOnItemClickListener就行了。