-
***接下來要做grid樣式和list樣式混排的情況。 ***grid形式的RecyclerView一般都是一行有多列,但是list樣式的可以看作是只有一列的grid樣式。查看全部
-
***前面定義顏色種類的時候用的是R文件的id,而我們在那三個ViewHolder中設置背景顏色的時候用的是setBackgroundColor()方法,由于 該方法的參數(shù)接收的是資源文件,所以會產生異常,所以這里應該使用setBackgroundResource()方法查看全部
-
!!!將DataModel的對象data給add進list集合中、查看全部
-
***把所有的數(shù)據(jù)都放在一個Model當中,然后再取相應的字段就好。查看全部
-
!!!!查看全部
-
***接下來就要回到Adapter中的onCreatViewHolder()中做處理,因為在getItemViewType()方法中已經(jīng)有相應的type進行返回了。所以只需要在conCreatViewHolder()方法中使用switch()語句做判斷,switch()中值就是type.然后根據(jù)相應的type返回相應的ViewHolder。 ***在onBindViewHolder()中也要做相應的處理,因為該方法中是沒有viewType的,所以要先通過getItemViewType(position)得到它。 ***如果那三個ViewHolder是沒有繼承那個抽象類的話,那么就要利用到switch()語句分別對每個VieeHolder進行綁定。例如:((TypeOneViewHolder)holder).bindHolder(mlist.getposition());//bindHolder()方法中的參數(shù)是該集合調用getPosition()得到的相應的位置。 如果那三個ViewHodler都繼承了那個抽象類的話,那么只需要一行代碼即可: ((TypeAbstractViewHolder)holder).bindHolder(mlis.getposition());查看全部
-
!!!查看全部
-
!??!查看全部
-
!!!查看全部
-
繼承剛創(chuàng)建的那個抽象類。查看全部
-
***因為三個ViewHolder的里面都是要用到bindHolder()方法的,所以干脆創(chuàng)建一個抽象類,然后讓那三個ViewHolder去繼承這個抽象類, 然后去實現(xiàn)這個方法。注意:要讓該抽象類去進程RecyclerView.ViewHolder。 ***如果有個別ViewHoler不需要實現(xiàn)那個bingHolder()方法的話,那個可以讓那個抽象類中不要把bindHolder()方法定義為抽象的,然后就可以讓子類進行重寫該方法啦。查看全部
-
***三個item的布局寫完之后,接下來要寫holder。。 ***創(chuàng)建holder是有技巧的,因為這三個布局有很多功能是類似的。 ***三個item布局分別對應三個holder、 ***寫holder的時候首先要清楚你寫的holder是對應哪一個item布局的,然后去看下該布 局中定義了哪些控件,然后在對應的holder中進行聲明。 ***之后在該holder的構造函數(shù)中得到這些控件。 ***然后寫一個方法進行將ViewHolder里面的數(shù)據(jù)和外面的數(shù)據(jù)綁定起來查看全部
-
第三個item的布局、、查看全部
-
?。?!查看全部
-
**接下來需要創(chuàng)建三個不同的item布局。 ***注意:這里利用了tools:text在該控件中寫上了顯示的內容,但是實際上運行起來,該控件并不會顯示這些內容,而是顯示 外部響應給它的數(shù)據(jù),這里使用tools起到了工具的作用,方便讓你提前查看到顯示的效果。查看全部
舉報
0/150
提交
取消