Estoy tratando de encontrar un ImageView por etiqueta. Puedo asignar una etiqueta para el ImageView, pero cuando intento findViewWithTag, devuelve null. He leído que debo agregar a la vista de la childer con addChilder, pero la vista no tiene esta función. Alguien puede explaim para mí ¿cómo puedo hacer esto?

ImageView principal = (ImageView) findViewById(R.id.imagen_home_0);
    principal.setTag("principal");

en otra clase(AsyncTask) que me pase el contexto

        View noMiembros = new View(context);

        ImageView er = (ImageView) noMiembros.findViewWithTag("principal");
        er.setImageBitmap(result);
InformationsquelleAutor D4rWiNS | 2013-06-21

3 Comentarios

  1. 4

    Pasar de una Actividad a AsyncTask y sólo tiene que utilizar :

    ImageView principal = (ImageView) passedActivity.findViewById(R.id.imagen_home_0);

    o conseguir inflater de Contexto como este :

    LayoutInflater inflater = LayoutInflater.from(context);
    View row = inflater.inflate(R.layout.your_viw_that_contains_that_image, parent, false);
    
    ImageView principal = (ImageView) row.findViewById(R.id.imagen_home_0);
    
    //or by tag 
    principal = (ImageView) row.findViewWithTag("principal");

    Mejores deseos.

  2. 4

    Está llamando findViewWithTag en noMiembros
    que es un nuevo punto de Vista.

    Usted necesita llamar a findViewWithTag en un padre de la ImageView
    usted está tratando de alcanzar.

    Pero si usted desea conseguir su ImageView desde dentro de una AsyncTask, solo llame
    findViewById(R.id.imagen_home_0) en su Actividad.

    • Esta es la respuesta correcta
  3. 0

    Yo creo que tú eres … confundir esas dos etiquetas.

    setTag() puede conectar CUALQUIER objeto a la vista, mientras que la etiqueta XML es sólo una cadena – creo que la findViewByTag intentará igualar la etiqueta pasado a través de XML, no un sujeto a través de código – como no podría ser de cualquier objeto.

    ¿Por qué no sólo tiene que pasar el principal imageView para la asyncthread?

    • Esto es incorrecto. La firma del método es la Vista del público findViewWithTag(etiqueta de Objeto).
    • El problema es noMiembros se creará un nuevo punto de vista de que no contiene el ImageView, y no podía contener ya que no es un VIewGroup

Dejar respuesta

Please enter your comment!
Please enter your name here