Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
bla_bla
 Аватар для bla_bla
1 / 1 / 2
Регистрация: 05.05.2014
Сообщений: 31
#1

Элементы ExpandebleListView не меняют свой внешний вид при клике - Android

19.02.2016, 10:23. Просмотров 176. Ответов 8
Метки нет (Все метки)

Здравствуйте.

У меня есть ExpandebleListView, для которого я использую свои разметки для групп и дочерних элементов.
И когда у элементов списка есть фон, то они перестают выделяться при клике по ним.
Как можно этого избежать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.02.2016, 10:23     Элементы ExpandebleListView не меняют свой внешний вид при клике
Посмотрите здесь:

Android ListView - внешний вид
Имеется MultilineText. Надо изменить его внешний вид, чтобы каждая строка была подчеркнута Android
Android Внешний вид меню
Android Увеличение изображения при клике на миниатюру
Изменение цвета при клике по layout Android
PagerAdapter, как сделать, чтобы у каждого итема было свое название и свой вид? Android
Android Google Android ExpandebleListView
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CoolMind
417 / 400 / 65
Регистрация: 06.10.2012
Сообщений: 1,713
19.02.2016, 10:32     Элементы ExpandebleListView не меняют свой внешний вид при клике #2
bla_bla, добрый день!
Как задан фон?
Есть ли descendantFocusability в атрибутах?
Что есть выделение?
bla_bla
 Аватар для bla_bla
1 / 1 / 2
Регистрация: 05.05.2014
Сообщений: 31
19.02.2016, 10:51  [ТС]     Элементы ExpandebleListView не меняют свой внешний вид при клике #3
CoolMind, фон задан в xml: android:background="@color/colorBackground">
descendantFocusability в атрибутах нету.
Под выделением я имел ввиду изменение внешнего вида элемента для того, что бы было видно на какой элемент было нажато.
Spelcrawler
522 / 492 / 110
Регистрация: 12.03.2014
Сообщений: 1,643
Завершенные тесты: 1
19.02.2016, 11:04     Элементы ExpandebleListView не меняют свой внешний вид при клике #4
bla_bla, нужно вешать не цвет, а selector.
CoolMind
417 / 400 / 65
Регистрация: 06.10.2012
Сообщений: 1,713
19.02.2016, 11:29     Элементы ExpandebleListView не меняют свой внешний вид при клике #5
bla_bla, вообще, с ListView и ExpandableListView есть несколько способов работы с подсвечиванием нажатого элемента. Пожалуй, удобнее работать с selector. Также можно делать программно, но код уже не подскажу.
bla_bla
 Аватар для bla_bla
1 / 1 / 2
Регистрация: 05.05.2014
Сообщений: 31
19.02.2016, 12:45  [ТС]     Элементы ExpandebleListView не меняют свой внешний вид при клике #6
Spelcrawler, CoolMind, Попробовал через selector это сделать. Вылетает InflateException, когда пытаюсь инфлейтить элемент списка.
xml элемента списка:
Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="45dp"
    android:background="@color/selector_for_child_background">
 
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:text="Medium Text"
        android:id="@+id/textViewSubsection"
        android:layout_centerVertical="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginLeft="50dp"
        android:layout_marginStart="50dp"
        android:autoText="false"
        android:textColor="#000000"
        android:textSize="16dp" />
 
    <ImageView
        android:layout_width="25dp"
        android:layout_height="25dp"
        android:id="@+id/image_button_more"
        android:layout_centerVertical="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:src="@drawable/ic_more_vert_black_24dp"
        android:alpha="0.5"/>
 
</RelativeLayout>


xml селектора "selector_for_child_background.xml":
XML
1
2
3
4
5
6
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true"
        android:color="#ede8d6"/> <!-- pressed -->
    <item android:color="@color/colorBackgroundChoose"/> <!-- default -->
</selector>
Что я не так делаю?(
Spelcrawler
522 / 492 / 110
Регистрация: 12.03.2014
Сообщений: 1,643
Завершенные тесты: 1
19.02.2016, 12:51     Элементы ExpandebleListView не меняют свой внешний вид при клике #7
Цитата Сообщение от bla_bla Посмотреть сообщение
Что я не так делаю?(
Цитата Сообщение от bla_bla Посмотреть сообщение
android:background="@color/selector_for_child_background"
не color должен быть, а drawable.
bla_bla
 Аватар для bla_bla
1 / 1 / 2
Регистрация: 05.05.2014
Сообщений: 31
19.02.2016, 13:06  [ТС]     Элементы ExpandebleListView не меняют свой внешний вид при клике #8
Spelcrawler, поместил файл селектора в drawable. Не помогло.

Но помогло заменить атрибут color на атрибут drawable в файле селектора.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.02.2016, 15:10     Элементы ExpandebleListView не меняют свой внешний вид при клике
Еще ссылки по теме:

Android Оставить нажатое состояние кнопки при клике
Android Показать кнопки при клике на нужный элемент
Android Открыть старое активити при клике на уведомление
Передать данные при клике на listview в другое activity Android
Настроить внешний вид и положение курсора Android

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

Или воспользуйтесь поиском по форуму:
CoolMind
417 / 400 / 65
Регистрация: 06.10.2012
Сообщений: 1,713
19.02.2016, 15:10     Элементы ExpandebleListView не меняют свой внешний вид при клике #9
bla_bla, продолжает вылетать InflateException? А если удалить строку с android:background="@drawable/selector_for_child_background", то вылетать не будет?
Yandex
Объявления
19.02.2016, 15:10     Элементы ExpandebleListView не меняют свой внешний вид при клике
Ответ Создать тему
Опции темы

Текущее время: 03:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru