Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
DevExp
6 / 6 / 2
Регистрация: 27.05.2013
Сообщений: 59
#1

Как изменить цвет кнопки, на которую установлен селектор?

22.09.2014, 12:08. Просмотров 2015. Ответов 4
Метки нет (Все метки)

Добрый день!

Хочу изменить цвет кнопки на которой установлен селектор, но после установки цвета селектор не работает.
вот селектор для кнопки:
XML
1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
 
    <item android:state_pressed="true"><shape>
            <stroke android:width="1dip" android:color="@android:color/black" />
 
            <gradient android:angle="90.0" android:endColor="@android:color/holo_blue_light" android:startColor="@android:color/holo_blue_light" android:type="linear" />
 
            <padding android:bottom="20dip" android:left="20dip" android:right="20dip" android:top="20dip" />
        </shape></item>
 
</selector>
тут устанавливаю селектор:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_vertical|center_horizontal"
    android:orientation="vertical"
    tools:context="com.example.colorpicker.MainActivity" >
 
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_vertical|center_horizontal" >
 
        <Button
            android:id="@+id/btn1"
            android:layout_width="45dp"
            android:layout_height="45dp"
            android:layout_margin="1dp"
            android:background="@layout/selector_foreground" />
    </LinearLayout>
 
</LinearLayout>
а так устанавливаю программно цвет:
Java
1
2
Button btn = (Button) findViewById(R.id.btn1);
btn.setBackgroundColor(Color.parseColor("#EAA041"));
но селектор перестаёт работать...
Как установить программно и цвет кнопки и селектор?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2014, 12:08
Ответы с готовыми решениями:

Как изменить цвет TextView в виджете нажатием кнопки?
Здравствуйте. Я сделал виджет с часами, но мне нужно сделать так чтобы в...

Как узнать имя таблицы на которую установлен курсор
Есть БД состоящая из нескольких таблиц. Как узнать на какую конкретно таблицу...

Не получается изменить цвет кнопки
Я вроде написал все как нужно, но цвет кнопки все равно не изменяется... Вот...

Как изменить цвет пункта ListView при нажатии на него и сохранять его цвет при проматывании списка?
Здравствуйте, подскажите, пожалуйста, как изменить цвет пункта ListView при...

Как изменить цвет заголовка приложения?
Как изменить цвет заголовка приложения (Title Bar)?

4
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
22.09.2014, 12:15 #2
Ну никак, рисуйте еще один селектор с другим цветом и ставьте его в качестве бекграунда.
1
DevExp
6 / 6 / 2
Регистрация: 27.05.2013
Сообщений: 59
22.09.2014, 12:24  [ТС] #3
а если 50 кнопок и каждой кнопке нужно присвоить свой цвет, то 50 селекторов рисовать?
может есть какая-то альтернатива копипасту?

Добавлено через 5 минут
может есть способ программно подставлять цвет в селектор?
0
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
22.09.2014, 12:24 #4
Лучший ответ Сообщение было отмечено DevExp как решение

Решение

Можно так попробовать
Java
1
button.getBackground.setColorFilter(Color)
2
DevExp
6 / 6 / 2
Регистрация: 27.05.2013
Сообщений: 59
22.09.2014, 13:05  [ТС] #5
спасибо, подойдёт
0
22.09.2014, 13:05
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.09.2014, 13:05

Как изменить цвет меню приложения?
Здравствуйте, уважаемые программисты! Не могли бы вы мне помочь? Как изменить...

Как изменить цвет у Status Bar
Господа,подскажите,как изменить цвет у Status Bar, при условии что версия SDK &lt;...

Как поменять цвет нажатой кнопки в runtime?
Надо для кнопки менять цвета в нажатом/ненажатом состоянии. Во время работы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru