Android - Mostrar/ocultar CardView

 
Vista:
sin imagen de perfil

Mostrar/ocultar CardView

Publicado por Joaquín (24 intervenciones) el 07/11/2016 12:53:35
Tengo un adaptador:
public class AdaptadorTitulares extends RecyclerView.Adapter<HolderTitulares>
y quiero ocultar un CardView cuando presiono en un layout.
El layout (layClickNoComents) lo obtengo de otra clase como variable de clase, y lo paso al adaptador en:
1
2
3
4
5
6
public AdaptadorTitulares(Context context, List<Titular> feedItemList) {
        this.feedItemList = feedItemList;
        this.mContext = context;
        layClickNoComents=FlechaComentariosInflate.layout_flecha_mostrarverComent;
        imgFlechaVerComent=FlechaComentariosInflate.imgVerComent;
    }
Y el CardView lo obtengo en:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public HolderTitulares onCreateViewHolder(ViewGroup viewGroup, int i) {
    View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.listitem_titular, null);
    	HolderTitulares mh = new HolderTitulares(v);
//Hasta aquí el Holder
//Obtener cardview
    	cvvisible=(CardView) v.findViewById(R.id.cardView);
//Poner el cardview visible
    	cvvisible.setVisibility(View.VISIBLE);
//Comprobar que recibe 0, 4 y 8 para los valores View.VISIBLE, View.INVISIBLE  y  View.GONE  para cvvisible.getVisibility().
    	String visible =  String.valueOf(cvvisible.getVisibility());
    	Toast.makeText(v.getContext(),visible , Toast.LENGTH_SHORT).show();
Hasta aquí funciona. Desde aquí me hace los cambios de imagen R.drawable.flechaarriba y flechaabajo, así como los Toast “visible” y “No visible”, pero no toma los estados View.VISIBLE y View.GONE para el CardView (cvvisible) . Y no se me ocurre porqué, si alguien puede ayudarme me quitaría un buen lío, pues me he atascado.
    	layClickNoComents.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
            	if(cvvisible.getVisibility() == View.VISIBLE){
            		cvvisible.setVisibility(View.GONE);
            		imgFlechaVerComent.setImageResource(R.drawable.flechaarriba);
            	} else {
            		cvvisible.setVisibility(View.VISIBLE);
            		imgFlechaVerComent.setImageResource(R.drawable.flechaabajo);
            	}
            }
        });
        return mh;
    }
Gracias por adelantado.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder