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

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

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

Добрый день!

Хочу изменить цвет кнопки на которой установлен селектор, но после установки цвета селектор не работает.
вот селектор для кнопки:
http://www.cyberforum.ru/android-dev/thread2266188.html
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
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как изменить цвет кнопки, на которую установлен селектор? (Программирование Android):

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

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

Как изменить цвет пункта 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?
Надо для кнопки менять цвета в нажатом/ненажатом состоянии. Во время работы...

Как можно изменить цвет переключателя SwitchCompat?
Мне нужно задать свои цвета для переключателя SwitchCompat для его активного и...

Как изменить цвет одного из элементов ToolBar
Как изменить цвет вот этой части ToolBar'a?


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

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

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