В моем приложении, getChildView()
внутри мой ExpandableListAdapter не вызывается, а адаптер возвращает правильное количество ребенка (когда getChildrenCount()
называется). Мой вопрос: Каковы условия, которые необходимо выполнить, чтобы ExpandableListAdapter раздувал свои дети?На каких условиях getChildView() вызываются в ExpandableListAdapter
ответ
называется, когда у вас есть более чем на 1 пункт в группах и в Чайлдс, я имею в виду, когда getGroupCount возвращает значение больше 0
Ваша проблема не в getChildView(), мой друг, это определенно с макетом.
Точная проблема с андроидом: layout_height = "" вашего расширяемого списка, который разрезает дочерние элементы.
Используйте это как расположение:
<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:orientation="vertical"
android:background="#FFFFFF"
tools:context="/*your activity*/" >
<ExpandableListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:childDivider="@android:color/transparent"
android:dividerHeight="0dp" />
getGroupCount() метод подскажет вам, сколько групп будет в вас ExpandableListView и getChildrenCount (int groupPosition) метод подскажет, сколько детей будет для соответствующей группы. Поэтому, если метод getChildrenCount не возвращает значение 1 или больше 1, то до тех пор, пока не будут видны дочерние представления.
Еще одна вещь, которая также имеет значение, когда ваш вид Views не становится видимым, «высота расширяемого списка должна быть match_parent, если раскрываемое представление списка находится в любом другом макете, тогда высота макета также должна быть match_parent».
- 1. В каких условиях C++ оптимизирует вызовы конструктора?
- 2. При каких условиях создается JSESSIONID?
- 3. В каких условиях Йена поворачивается к параллели?
- 4. В каких условиях АРТ Компакт-куча?
- 5. В каких условиях работает Rails after_filter?
- 6. iOS В каких условиях работает Core Bluetooth?
- 7. В каких точных условиях патч не применяется?
- 8. В каких условиях необходимо закрыть HTTP-соединение?
- 9. При каких условиях Металлический шейдерный код "crash?"
- 10. Смешивание php и javascript - при каких условиях?
- 11. При каких условиях может измениться SocketChannel.hashCode()?
- 12. При каких условиях блок Java Scanner.hasNextLine()?
- 13. Three.js - При каких условиях ТРИ.Лины усечены?
- 14. При каких условиях подпроцесс Python получает SIGPIPE?
- 15. При каких условиях изменяется UUID устройства Android?
- 16. При каких условиях Groovy использует AbstractConcurrentMap?
- 17. При каких условиях хорошо иметь «частичный класс»?
- 18. При каких условиях необходим многопроходный подход?
- 19. Android expandableListAdapter Button
- 20. ExpandableListAdapter - Невозможно создать экземпляр типа ExpandableListAdapter
- 21. При каких условиях необходимо вызывать метод?
- 22. При каких условиях заголовки C++ не транзитивны?
- 23. При каких условиях вызывается метод setValue ELResolver?
- 24. При каких условиях BlockingQueue.take throw прервал исключение?
- 25. При каких условиях происходит перезагрузка AppleIdentifier?
- 26. При каких условиях PDO: execute() return false?
- 27. bindView эквивалент для ExpandableListAdapter
- 28. Просмотреть в методе getChildView
- 29. Android - Правильное размещение слушателей с ExpandableListAdapter
- 30. ExpandableListAdapter onClickListener, call notifyDataSetChanged()
Ну, я лично не использовал этот класс, но что вы делаете, что он не вызывает 'getChildView()'. Мое предположение заключалось в том, что оно вызывается, когда ему нужно подготовить себя к отображению 'View'. Поэтому, если родительский элемент не расширен, не будет причин для его вызова, поскольку он знает, что его не нужно показывать. Но опять же, какие условия вы испытываете? – Andy
У меня есть ресурсы соответствующего кода по адресу: [StackOverflow question] (http://stackoverflow.com/questions/16569387/expandableview-inside-another-expandableview-wont-inflate-children). Надеюсь, он ответит на ваш вопрос. –
Я знаю одно условие наверняка, и если 'childrenCount' возвращает 0, он не будет вызывать функцию (по понятным причинам) –