In my app I have a Fragment that implements a FirebaseRecyclerAdapter to list Firebase objects.
I would need to implement an onClick method to launch another fragment with detail info from the selected object.
I have searched on this question, but I haven´t found any answer that could be applied to my scenario.
This is the fragment code:
public class EnclaveFragment extends Fragment {
    private String enclave;
    private TextView mText;
    private RecyclerView mListaEnclaves;
    private DatabaseReference mDatabase;
    public void onStart() {
        super.onStart();
        FirebaseRecyclerAdapter<Enclave, EnclavesViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Enclave, EnclavesViewHolder>  (
                Enclave.class,
                R.layout.enclave_row,
                EnclavesViewHolder.class,
                mDatabase.orderByChild("Comunidad_enclave").equalTo(enclave)) {
            protected void populateViewHolder(EnclavesViewHolder viewHolder, Enclave model, int position) {
                viewHolder.setTitulo(model.getNombre_enclave());
                viewHolder.setDescripcion(model.getDescripcion_enclave());
                viewHolder.setImage(getActivity().getApplicationContext()  , model.getImagen_Enclave());
            }
        };
        mListaEnclaves.setAdapter(firebaseRecyclerAdapter);
    }
    public static class EnclavesViewHolder extends RecyclerView.ViewHolder {
        View mView;
        public EnclavesViewHolder(View itemView) {
            super(itemView);
            mView = itemView;
        }
        public void setTitulo(String titulo){
            TextView titulo_enclave = (TextView) mView.findViewById(R.id.titulo_enclave);
            titulo_enclave.setText(titulo);
        }
        public void setDescripcion(String descripcion){
            TextView descripcion_enclave = (TextView) mView.findViewById(R.id.descripcion_enclave);
            descripcion_enclave.setText(descripcion);
        }
        public void setImage(Context ctx, String imagen){
            ImageView imagen_enclave = (ImageView) mView.findViewById(R.id.imagen_enclave);
            Picasso.with(ctx).load(imagen).into(imagen_enclave);
        }
    }
    public EnclaveFragment() {
    }
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        Bundle bundle = getArguments();
        if (bundle != null) {
            enclave = bundle.getString("KEY_DETAIL", "Madrid");
            Log.d("Enclave recibido",enclave);
        }
        View rootView = inflater.inflate(R.layout.enclave_connect, container, false);
        mListaEnclaves = (RecyclerView) rootView.findViewById(R.id.lista_enclaves);
        mListaEnclaves.setHasFixedSize(true);
        mListaEnclaves.setLayoutManager(new LinearLayoutManager(this.getActivity()));
        mDatabase = FirebaseDatabase.getInstance().getReference().child("Enclaves");
        mText = (TextView) rootView.findViewById(R.id.ccaatxt);
        mText.setText(enclave);
        return rootView;
    }
}
 
     
     
    