@Aleks_newsky

Как сделать «постоянно» меняющийся цвет фона в android studio при нажатии на кнопку?

Собственно вот код кнопки на которую стартует смена нашего фона на случайный цвет
public void onRdmButtonClick(View view) {
        int x=0;
        Random rand = new Random();
        while(x<5) {
            mRelativeLayout.setBackgroundColor(-rand.nextInt(0xFFFFFF));
            x++;
        }
    }

Да цвет меняется на рандомный, но только если самому постоянно тыкать. Цикл не делает это за меня по непонятным причинам.
  • Вопрос задан
  • 5163 просмотра
Решения вопроса 1
GavriKos
@GavriKos
Ну я думаю что вполне себе все меняется, может даже и рандомно, но вы этого просто не успеваете увидеть. Задержки то в цикле нету. Он за десяток машинных тактов закончится, это меньше чем может увидеть человеческий глаз. Самый простой вариант - вставить sleep. Но т.к. это у вас скорее всего основной UI поток, то так делать на продакшне нельзя - надо делать отдельный поток, чтобы не фризить поток интерфейса.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы