// 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+")";
}
}