Изменение цветов фона макета в Java - PullRequest
0 голосов
/ 21 июля 2011

Я недавно сделал приложение с несколькими макетами XML (и я дал им все очень красочные фоны!) Однако, мой друг заметил, что это было немного «слишком».

Итак, я решил добавить флажок в файл main.xml, который установлен по умолчанию. Если флажок снят, я хочу, чтобы каждый цвет фона становился черным, цвета моих кнопок меняли цвет фона с «@ drawable / buttoncolor» на «@ drawable / colorless», а весь текст кнопок изменялся на белый («# FFFFFF "). Затем при повторной проверке программа должна восстановить настройки по умолчанию.

Итак, вопрос в том ... как бы я это сделал? Я уже установил что-то вроде этого:

View colorBox = findViewById(R.id.noColor);
colorBox.setOnClickListener(this);

где colorBox - мой флажок.

А потом ...

public void onClick(View v) {
    switch (v.getId()) {
    // (Other code I have here)
    case R.id.noColor:
        // Does something go here..?
        break;
    }
}

Вся помощь приветствуется.

(Кстати, это решение у меня тоже не сработало: Как изменить цвет фона TextView на цвет, определенный в моем файле values ​​/ colors.xml? )

Ответы [ 2 ]

0 голосов
/ 21 июля 2011
colorBox.setBackgroundResource(R.drawable.colorless);
((TextView)colorBox).setTextColor(COLOR.WHITE);

вам нужно импортировать java.awt.Color

0 голосов
/ 21 июля 2011

Найдите setBackgroundResource или setBackgroundDrawable и затем вызовите любой из этих методов в каждом представлении, чтобы изменить фон.

...