2010-01-17 21 views
8

ViewHolder patrón de mejora ListView desplazamiento de imágenes por segundo, como se ve en la siguiente ejemplo: https://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List14.htmlAndroid: ¿Patrón de ViewHolder y diferentes tipos de filas?

¿Es posible mantener este patrón durante el uso de diferentes tipos de vistas para diferentes filas?

En otras palabras, ¿es posible hacer algo como:

public View getView(int position, View view, ViewGroup parent) { 
    // calculate viewID here 
    if (view == null || *view is not null but was created from different XML than viewID*) { 
     view = mInflater.inflate(viewId, null); 

Respuesta

17

Sí, a pesar de que es mucho mejor para anular getViewTypeCount() y getItemViewType() en su adaptador. Esto le enseñará al grupo de objetos de Android que solo le devuelva una fila del tipo correcto en getView().

+1

¿Hay algún truco similar para ExpandableListAdapter? – tomash

+0

mientras tanto, agregué información necesaria como una bandera para ViewHolder, funciona – tomash

Cuestiones relacionadas