2017-08-09 6 views

Antwort

0

Sie brauchen eine Transformation in Ihrem ViewHolder hinzuzufügen. Prüfen Sie diesen Beitrag: link

0

ich weiß nicht, ob Christopher Link ermöglicht die erweiterbaren die ganzen 2 Gitter zu besetzen. Es kann einen Weg geben, der eine Kombination von getItemViewType() und setSpanSizeLookup() verwendet.

@Override 
public int getItemViewType(int position) { 
    if (position == positionOfClickedItem + 2){ 
     return TYPE_EXPANDABLE; 
    } else { 
     return TYPE_CAR_ITEM; 
    } 
} 

Binden Sie die Daten entsprechend ihrer Position und tragen Sie die Position zu Ihrer Aktivität, um SpanSizeLookup festzulegen. Sie würden dann den Adapter einer Änderung mitteilen müssen:

// Create a SpanSizeLookup which returns 2 grids span if its the expandable or 1 otherwise. 
    gridLayout.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() { 
     @Override 
     public int getSpanSize(int position) { 
      if (position == positionOfClickedItem) { 
       return 2; 
      } else { 
       return 1; 
      } 
     } 
    }); 

Ich denke, die Transformation Antwort besser funktioniert, aber nur für den Fall der Span Größe ist wichtig.