Как изменить цвет фона в приложении касанием на экран
Нужно изменить цвет фона в приложении на рандомный касаясь любого места на экране. Пишу в студии на джаве.
Ответы (1 шт):
Изначально не понятно что значит "фон приложения". Макет экрана состоит из элементов, и хотелось бы уточнения какой именно элемент вы хотите изменить, так как возможно будет зависеть реализация. Во-вторых - определитесь с ЯП, а то Java и Kotlin оба хороши, но я думаю вы же можете сказать какой именно ЯП вы используете. Но в целом программно сделать можно так:
yourView.setBackgroundColor(Color.parseColor("#ffffff"));
или через ресурсы приложения:
yourView.setBackgroundResource(R.color.colorPrimaryDark);
но вам ведь нужен клик. Поэтому обрабатываем клик по элементу:
yourView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
yourView.setBackgroundResource(R.color.colorPrimaryDark);
}
});
рандомный цвет получаем так:
Random rnd = new Random();
int color = Color.argb(255, rnd.nextInt(256), rnd.nextInt(256), rnd.nextInt(256));
yourView.setBackgroundColor(color);
ну и наконец итоговый вариант:
yourView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Random rnd = new Random();
int color = Color.argb(255, rnd.nextInt(256), rnd.nextInt(256), rnd.nextInt(256));
yourView.setBackgroundColor(color);
}
});
код выше как можно понять написан на Java, если ВСЕ-ТАКИ вам нужен Kotlin то просто вставьте это в активность/фрагмент и студия конвертирует.
P.S. Пожалуйста когда задаете вопросы, пишете максимально доступным языком включая в вопрос всю информацию связанную с вашей проблемой. У вас не понятно где это происходит (активность/фрагмент) не понятно на каком языке вам это нужно, не понятно цвет чего именно вы хотите изменить, и тд и тп. Пожалуйста включайте в ваши вопросы больше подробностей и тогда вероятность его закрытия понизится, а вероятность того что вам ответят станет намного выше.