0 votos

// la clase que genera la imagenes

    class AdaptadorJugadores extends ArrayAdapter<Jugadores> {

        AppCompatActivity appCompatActivity;

        AdaptadorJugadores(AppCompatActivity context) {
            super(context, R.layout.jugadores, listaJugadores);
            appCompatActivity = context;
        }


        boolean bandera = true;


        public View getView(int posicion, View convertView, ViewGroup parent) {

            LayoutInflater inflater = appCompatActivity.getLayoutInflater();
            View item = inflater.inflate(R.layout.jugadores, null);

            TextView textView = item.findViewById(R.id.textView2);
            textView.setText(listaJugadores.get(posicion).toString());

            ImageView imageView = item.findViewById(R.id.imageView);

            if (bandera == true) {
                if (contador == 1) {
                    imageView.setImageResource(R.mipmap.number2);
                }
                if (contador == 2) {
                    imageView.setImageResource(R.mipmap.number3);
                }
                if (contador == 3) {
                    imageView.setImageResource(R.mipmap.number4);
                }
                if (contador == 4) {
                    imageView.setImageResource(R.mipmap.number5);
                }
                if (contador == 5) {
                    imageView.setImageResource(R.mipmap.number6);
                }
                if (contador == 6) {
                    imageView.setImageResource(R.mipmap.number7);
                }
                if (contador == 7) {
                    imageView.setImageResource(R.mipmap.number8);
                }
                if (contador == 8) {
                    imageView.setImageResource(R.mipmap.number9);
                }
                if (contador == 9) {
                    imageView.setImageResource(R.mipmap.number10);
                }
                if (contador > 9) {
                    imageView.setImageResource(R.mipmap.usuariohombre);
                }


                contador++;

            }


            return item;

        }

    }
// Aqui traigo los datos de Firebase

    private void Listado() {

        databaseReference.child(asociacion).orderByChild("puntuacion").addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(@NonNull DataSnapshot snapshot) {
                for (DataSnapshot dataSnapshot : snapshot.getChildren()) {

                    listaJugadores.add(dataSnapshot.getValue(Jugadores.class));

                    Collections.sort(listaJugadores, (o1, o2) -> new Integer(o2.getPuntuacion()).compareTo(new Integer(o1.getPuntuacion())));
                }

            }

            @Override
            public void onCancelled(@NonNull DatabaseError error) {

            }
        });

    }

// Este es el modeolo de los datos

public class Jugadores {

    private String nombre, id;
    private int puntuacion;

    public Jugadores(String nombre, int puntuacion){
        this.nombre= nombre;
        this.puntuacion= puntuacion;
    }
    public Jugadores(){

    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public int getPuntuacion() {
        return puntuacion;
    }

    public void setPuntuacion(int puntuacion) {
        this.puntuacion = puntuacion;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    @Override
    public String toString() {
        return "      "+nombre+"("+puntuacion+")";
    }
}

 

por en Android

1 Respuesta

+1 voto
Mejor respuesta
El problema es que usas "contador" como variable calcular la imagen que le toca al item del listview (y como siempre es incremental, al final se pasa cuando haces scroll). Tienes que utilizar la variable pasada a la función "posicion" (en vez de contador), pues esta define cuál item es cada vez y se dibujará en consonancia.
por
seleccionada por

Jjajajajaj este problema me estaba frustrando y no sabia que era tan sencilla la

solución ya estaba pensando que no tenia capacidad para esto, varias pagina de programadores android y java no pudieron resolverlos, Gracias hermano, ya me habia suscrito a tu pagina y canal de youtube porque creo que tu contenido es excelente. 

Saludos desde Republica Dominicana!!!.

Cómo se pronuncia