Гость
Форумы / Android [игнор отключен] [закрыт для гостей] / Как узнать у TextView какой drawable в Background ? / 9 сообщений из 9, страница 1 из 1
18.06.2016, 11:05
    #39258213
AromaFon
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать у TextView какой drawable в Background ?
TextView gr = (TextView) findViewById(id);
gr.setBackgroundResource(R.drawable.gron); // устанавливаю

Как прочитать, что у gr установлен R.drawable.gron?
...
Рейтинг: 0 / 0
18.06.2016, 13:38
    #39258251
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать у TextView какой drawable в Background ?
AromaFon,

если есть set и нет get, то никак.
Да и зачем ему помнить источник рисунка?
Загрузил из ресурса и все.
...
Рейтинг: 0 / 0
18.06.2016, 13:51
    #39258255
AromaFon
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать у TextView какой drawable в Background ?
wadman, gr.getBackGround() есть, но ничего не могу из него вытащить.
...
Рейтинг: 0 / 0
18.06.2016, 14:47
    #39258260
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать у TextView какой drawable в Background ?
Это не то. Если нужна именно ссылка на ресурс в качестве id, то используй свойство tag.
Оно есть у каждого объекта в яве.
...
Рейтинг: 0 / 0
18.06.2016, 22:26
    #39258347
AromaFon
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать у TextView какой drawable в Background ?
wadman, Через Tag не пошел. Решил у текущего TextView менять TextColor:
tekv.setTextColor(Color.RED), а потом выбирал gr.getTextColors().getDefaultColor() в цикле :

// Цикл по RelativeLayout их 7, по дням недели
RelativeLayout w;
for (dn=1;dn<8;dn++){
int idw = getResources().getIdentifier("w" + dn, "id", this.getPackageName());
w = (RelativeLayout) findViewById(idw);

// Кол-во TextView в RelativeLayout w
kd=w.getChildCount();

// Цикл по TextView в RelativeLayout
for (i=0;i<kd;i++){
id = w.getChildAt(i).getId();
TextView gr = (TextView) findViewById(id);

//TextView перестал быть текущим, меняю drawable и убираю красный TextColor:

if (gr.getTextColors().getDefaultColor() & lab!=id ){
gr.setTextColor(Color.WHITE);
gr.setBackgroundResource(R.drawable.grof);
}

//TextView стал текущим, меняю drawable:

if (lab==id){
gr.setBackgroundResource(R.drawable.gron);
}

}
}
...
Рейтинг: 0 / 0
18.06.2016, 23:22
    #39258358
Джибс
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать у TextView какой drawable в Background ?
главный вопрос - зачем ?
...
Рейтинг: 0 / 0
19.06.2016, 02:21
    #39258364
AromaFon
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать у TextView какой drawable в Background ?
Джибс, задачка такая была: выделять текущий TextView, их штук 20. Текущий TextView выделяем, предыдущий текущий гаснем. Хотел менять сменой Drawable у TextView, не получилось вытащить Drawable у TextView. Можно было запомнить текущий TextView и обойтись без циклов.
...
Рейтинг: 0 / 0
19.06.2016, 08:55
    #39258375
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать у TextView какой drawable в Background ?
AromaFon,

это можно делать стилями. Или хотя-бы в событиях с получением/потерей фокуса.
...
Рейтинг: 0 / 0
21.06.2016, 11:10
    #39259423
Джибс
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать у TextView какой drawable в Background ?
AromaFonДжибс, задачка такая была: выделять текущий TextView, их штук 20. Текущий TextView выделяем, предыдущий текущий гаснем. Хотел менять сменой Drawable у TextView, не получилось вытащить Drawable у TextView. Можно было запомнить текущий TextView и обойтись без циклов.

есть несколько путей.

1. написать свой textView с новым стейтом, а потом просто повесить в селекторе на него нужный бекграунд итд.
2. если приложение для андроида версии от 4.х , использовать там метод activate , и добавить в селектор обработку activated итд.

это всяко упрощает и не нужно выдумывать велосипед
все там за вас продумано
...
Рейтинг: 0 / 0
Форумы / Android [игнор отключен] [закрыт для гостей] / Как узнать у TextView какой drawable в Background ? / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]