//TYPE1
public void bindViewHolder(ViewHolder holder, int position) {
Log.w("bindViewHolder",position+" "+getPosition(this,position));
}
0 1
1 1
2 2
3 3
should be:
0 1
1 2
2 3
3 4
data example:
TYPE0
TYPE1
TYPE1
TYPE1
in getPosition
--binderPosition;
if(binderPosition <= 0) {
when positionOfBinder==0, after1 loop, -1<=0 so return 1 (correct)
when positionOfBinder==1, after1 loop, 0<=0 so return 1 (wrong, it should be 2)
i think binderPosition should not <0, so i fix it with
if(binderPosition-- <= 0) {
when positionOfBinder==0, after1 loop, 0<=0 so return 1 (correct)
when positionOfBinder==1, first loop 1<=0 is false , second loop, 0<=0 so return 2 (correct)
0 1
1 1
2 2
3 3
should be:
0 1
1 2
2 3
3 4
data example:
TYPE0
TYPE1
TYPE1
TYPE1
in getPosition
when positionOfBinder==0, after1 loop, -1<=0 so return 1 (correct)
when positionOfBinder==1, after1 loop, 0<=0 so return 1 (wrong, it should be 2)
i think binderPosition should not <0, so i fix it with
when positionOfBinder==0, after1 loop, 0<=0 so return 1 (correct)
when positionOfBinder==1, first loop 1<=0 is false , second loop, 0<=0 so return 2 (correct)