RecycleView 實現左右列表併排

2021-07-24 11:32:22 字數 2512 閱讀 2816

網上關於listview的左右列表併排挺多,但是現在基本上都沒用listview 了,今天來寫寫recycleview左右列表併排。

頁面布局:

xmlns:

android

=""android

:layout_width=

"match_parent"

android

:layout_height=

"match_parent"

>

android

:id=

"@+id/left_list"

android

:layout_width=

"90dp"

android

:layout_height=

"match_parent"

android

:background=

"@color/white"

android

:scrollbars=

"none"

/>

android

:id=

"@+id/right_list"

android

:layout_width=

"match_parent"

android

:layout_height=

"match_parent"

android

:scrollbars=

"none"

/>

ok,接下來看leftadapter

public class mostleftadapter extends recyclerview.adapter 

public void

setlist(listlist)

public listgetlist()

public void

setonitemclicklistener(myitemclicklistener listener)

@override

public recyclerview.viewholder oncreateviewholder(viewgroup parent, int viewtype) else

}@override

public void

onbindviewholder(recyclerview.viewholder holder, int position)

@override

public int

getitemcount()

@override

public int

getitemviewtype(int position) else

}public void

setposition(int position)

public inte***ce myitemclicklistener

public class itemviewholder extends recyclerview.viewholder implements view.onclicklistener

@override

public void

onclick(view v) }}

private class itemviewselectholder extends itemviewholder

}

,注釋寫的很清楚了,相信都能看懂。

下面看一下activity裡面的邏輯:

//設定左邊資料來源

private void

getleftname()

if (i == 2)

if (i == 3)

if (i == 4)

if (i == 0)

mpricelist.add(bean);

} listprices = new arraylist<>();

for (choiceleftbean pricebean : mpricelist)

leftadapter.setlist(prices);

//預設根據left的第一項資料去載入右邊得資料

requestrightdata(0);

leftadapter.notifydatasetchanged();

leftadapter.setonitemclicklistener(new mostleftadapter.myitemclicklistener()

});}

首先簡單繫結了左列表的資料,同時初始化右列表,**都有注釋,這裡不多說。

改變右側列表資料來源:

private void 

requestrightdata(int position)

是不是很簡單。最後貼張效果圖:

使用recycleview實現廣告輪播

由於工作的需要,需要放上百張輪播,所以想做乙個可能能夠承受住的輪播,當然最節省記憶體的方式可能就是復用了。其實自己寫復用也可以,配合 viewpager 但是想到了 recyclerview 本身自帶復用效果,那為何不用 recyclerview 做乙個呢?其實很簡單,那就是前幾天剛剛分享的那篇文章...

RecycleView劃線操作

package com.bwf.tuanche.car select.view import android.content.context import android.content.res.typedarray import android.graphics.canvas import and...

RecycleView區域性重新整理

向指定位置插入item public final void notifyiteminserted int position 移除指定位置item public final void notifyitemremoved int position 更新指定位置item public final void...