Как заставить фоновое изображение imageView изменить один раз - PullRequest
0 голосов
/ 18 ноября 2018
if (buttonClicked.contains(1) && buttonClicked.contains(2)) {
    if (playerOneLastClicked) {
        imgViewBackground1.setImageResource(R.drawable.rca)
    } else {
        imgViewBackground1.setImageResource(R.drawable.wac)
    }
}

if (buttonClicked.contains(3) && buttonClicked.contains(4) && buttonClicked.contains(5)) {
    if (playerOneLastClicked) {
        imgViewBackground2.setImageResource(R.drawable.rca)
    } else {
        imgViewBackground4.setImageResource(R.drawable.wac)
    }
}

, когда player1 или player2 последний клик в (buttonClicked.contains(1) && buttonClicked.contains(2)) imgViewBackgound1 меняется, но когда игроки нажимают кнопку 3,4 или 5 imgViewBackground продолжают меняться.

Я хочу, чтобы imgViewBackground1 взять (R.drawable.rca) или (R.drawable.wac) больше не менялось.

1 Ответ

0 голосов
/ 19 ноября 2018

Если у imgViewBackground нет изображения, вы можете просто добавить дополнительную проверку, например,

if (imgViewBackground1.drawable == null) {
     if (playerOneLastClicked) {
                imgViewBackground1.setImageResource(R.drawable.rca)
            } else {
                imgViewBackground1.setImageResource(R.drawable.wac)
            }
    }
}

, или если у него уже есть изображение, и вы не хотите, чтобы оно устанавливалось снова

if (imgViewBackground1.drawable != resources.getDrawable(R.drawable.rcs, null) 
    || imgViewBackground1.drawable != resources.getDrawable(R.drawable.wac, null))
    if (playerOneLastClicked) {
                    imgViewBackground1.setImageResource(R.drawable.rca)
                } else {
                    imgViewBackground1.setImageResource(R.drawable.wac)
                }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...