Question

I have a game where I am using 12 buttons with no text on to display lives. Every time they lose a life, this code is run

public void guessesRemainingDisplay(int numberOfGuesses) {

    int guessesRemaining;

    guessesRemaining = maximumGuesses + 1 - numberOfGuesses;

    switch(guessesRemaining) {

    case 1:

        findViewById(R.id.Guess1).setBackgroundColor(color.transparent);
        break;

    case 2:
        findViewById(R.id.Guess2).setBackgroundColor(color.transparent);
        break;

    case 3:
        findViewById(R.id.Guess3).setBackgroundColor(color.transparent);
        break;

    case 4:
        findViewById(R.id.Guess4).setBackgroundColor(color.transparent);
        break;

    case 5:
        findViewById(R.id.Guess5).setBackgroundColor(color.transparent);
        break;

    case 6:
        findViewById(R.id.Guess6).setBackgroundColor(color.transparent);
        break;

    case 7:
        findViewById(R.id.Guess7).setBackgroundColor(color.transparent);
        break;

    case 8:
        findViewById(R.id.Guess8).setBackgroundColor(color.transparent);
        break;

    case 9:
        findViewById(R.id.Guess9).setBackgroundColor(color.transparent);
        break;

    case 10:
        findViewById(R.id.Guess10).setBackgroundColor(color.transparent);
        break;

    case 11:
        findViewById(R.id.Guess11).setBackgroundColor(color.transparent);
        break;

    case 12:
        findViewById(R.id.Guess12).setBackgroundColor(color.transparent);
        break;


    }

}

And the furthest most right button disappears (they are in a line, 1 on left 12 on right).

However, when I start a new game, or when the activity first opens, this code is run

findViewById(R.id.Guess1).setBackgroundColor(color.X);

Repeated for every single id. X being literally any color (I've tried it with loads of different ones). For some reason, if this code is ever run, the button disappears. Why? If its not run, the 12 buttons appear, but whenever I start a new game obviously the buttons that have disappeared due to losing lives dont come back.

Was it helpful?

Solution

For you task it's better to use findViewById(R.id.id).setVisibility(View.Invisible) for disappearing and 'findViewById(R.id.id).setVisibility(View.Visible)' for returning view back.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top