Buenas! Estoy desarrollando una aplicación en la que cuando haces clic en un Button el juego coge una String aleatoria de un Array de Strings. El problema está en que los Strings que se muestran se repiten y yo eso lo quiero evitar.
De momento he intentado solventar el problema con este código que he hecho:
Código:
next.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (actualNumPlayers == 0)
{
Toast toast = Toast.makeText(getApplicationContext(), ResourceBundle.getBundle("lang").getString("uNeedPlayers"), Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER,0,0);
toast.show();
}
else
{
if (a == 1)
{
trickName.setText(tricks[random.nextInt(tricks.length)]);
usedTricks[a] = trickName.getText().toString();
}
else
{
for (int b = 0; b < a; b++)
{
trickName.setText(tricks[random.nextInt(tricks.length)]);
usedTricks[a] = trickName.getText().toString();
if (trickName.getText().toString().equals(usedTricks[b]))
{
Toast toast = Toast.makeText(getApplicationContext(), "Repetido!", Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER,0,0);
toast.show();
}
}
}
a++;
// TRUCOS NO REPETIDOS
}
}
});
Lo que quiero hacer es que cada vez que se le da al Button, el String se almacene en el Array de Strings usedTricks, para que cuando salga otro String, si éste ya ha salido que salga otro automáticamente, si no, que se quede ahí hasta que el usuario vuelva a darle al Button.
Gracias de antemano.
Un saludo!