Hace notificydatasetchanged llamada onCreateViewHolder al usar RecyclerView

Quiero usar un conmutador para alternar entre dos vistas diferentes pero usando el mismo RecyclerView. Básicamente, una vez que cambie, quiero que el adaptador RecyclerView recuerde onCreateViewHolder, pero esta vez usará un archivo de elemento de diseño diferente. ¿ notifydatasetchanged() que el adaptador se reconstruya? ¿O hay otra manera?

Muchas gracias de antemano.

4 Solutions collect form web for “Hace notificydatasetchanged llamada onCreateViewHolder al usar RecyclerView”

Necesitaba tener dos tipos en View s en mi Adapter RecyclerView , así, uno para el modo "regular" y uno para el modo de selección múltiple.

Por lo tanto, puede anular getItemViewType para forzar el adaptador a llamar a su onCreateViewHolder para todas las vistas.

Añadir esto al Adapter código:

 public void setActionMode(ActionMode actionMode) { this.actionMode = actionMode; notifyDataSetChanged(); } @Override public int getItemViewType(int position) { return (actionMode == null ? 0 : 1); } 

Añada esto al ViewHolder :

 @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view; if (viewType == 0) { view = inflater.inflate(R.layout.layout_1, parent, false); } else { view = inflater.inflate(R.layout.layout_2, parent, false); } ... } 

Puesto que usted devuelve un ViewType diferente cuando está en un ActionMode , el adaptador se ve obligado a tirar todas las vistas creadas, y volver a crear todo de nuevo.

Para eliminar y actualizar el diseño de RecyclerView, puede llamar al

 mRecyclerView.removeView(view); 

o

 mRecyclerView.removeViewAt(position); 

Después de eliminar el objeto en su conjunto de datos

NotifyDataSetChanged () llamada onBindViewHolder() cuando se utiliza RecyclerView

Sí, asumirá que su conjunto de datos actual no es válido y que necesitaría relais y volver a enlazar todos los diseños.

  • Cómo ordenar Strings en un Android RecyclerView?
  • No contraer la barra de herramientas cuando RecyclerView se ajusta a la pantalla
  • RecyclerView se desplaza automáticamente a WebView / Fresco Elemento SimpleDraweeView
  • Obtener encabezados de sección para trabajar con SuperSLiM y RecyclerView
  • Cuando se enfoca EditText dentro de ListView o RecyclerView, el teclado muestra pero el desplazamiento no funciona
  • RecyclerView onClick
  • Extraño comportamiento de las imágenes en RecyclerView
  • ¿Deberíamos usar RecyclerView para reemplazar ListView?
  • Espacio Problema al crear el diseño del bus en la vista del reciclador Gridlayout manager
  • Clic en el elemento programáticamente en RecyclerView
  • RecyclerView no llama aCreateViewHolder o onBindView
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.