Inicio de DialogFragment desde una clase que se extiende RecyclerView.ViewHolder

He intentado lo siguiente en el método onClick () de la clase recyelerview.viewholder.

SampleDialogFragment utilizado en la muestra extiende DialogFragment.

@Override public void onClick(View v) { SampleDialogFragment df= new SampleDialogFragment(); df.show(v.getContext().getSupportFragmentManager(), "Dialog"); } 

Estoy enfrentando el problema en v.getContext().getSupportFragmentManager() . No puedo llamar a getSupportFragmentManager ().

También intenté como abajo.

 @Override public void onClick(View v) { SampleDialogFragment df= new SampleDialogFragment(); SampleActivity activity = new SampleActivity(); df.show(activity.getSupportFragmentManager(), "Dialog"); } 

SampleActivity es la actividad a la que está conectada la vista del reciclador. No muestra ningún error. Cuando ejecuto la aplicación y bloqueo.

El registro muestra que la actividad se ha destoryed.

Alguna solución ?

La manera correcta es usar una interfaz.

 public interface OnItemClickListener { void onItemClicked(View v); } 

Y llame al método de interfaz cuando se dispara el método onClick.

 public class YourListAdapter extends RecyclerView.Adapter<...> //your code private OnItemClickListener listener; public YourListAdapter(OnItemClickListener listener /*your additional parameters*/) { this.listener = listener; //... } @Override public void onClick(View v){ listener.onItemClicked(View v); } } 

OnItemClickListener pasar la instancia de la interfaz SampleActivity de SampleActivity

Y que lo implementen en su SampleActivity

 public class SampleActivity extends FragmentActivity implements OnItemClickListener { @Override public void onItemClicked(View v) { SampleDialogFragment df= new SampleDialogFragment(); df.show(getSupportFragmentManager(), "Dialog"); } } 
  • ¿Cómo obtener información sobre el toque de RecyclerView?
  • Pulsar el botón de clic dentro de una fila en RecyclerView
  • SwipeRefreshLayout obstruye el desplazamiento de recycleview en el momento de desplazarse hacia arriba
  • Recyclerview, no puedo obtener la vista del elemento con getChildAt (posición). Referencia de objeto nulo
  • Firebase RecyclerView - Desplácese sobre la animación cuando se añade un elemento nuevo
  • Sdk mínimo para recycleview y pros / contras de reemplazar listas con ella
  • FindFirstVisibleItemPositions no funciona para recycleview android
  • RecyclerView con GridLayoutManager y Picasso mostrando imagen incorrecta
  • Aplicar offset a elementos GridLayout y conservar el mismo tamaño entre todos los elementos
  • RecyclerView no se actualiza después de NotifyDataSetChanged (), el contenido aparece después de encender y apagar la pantalla
  • Android RecyclerView desplazamiento suave para ver que está animando su altura
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.