2010-06-22 2 views
0

У меня есть «Dynamic» ExpandableListView. То есть ребенок - это только загрузка, когда нажимается на родителя.Проблема с ExpandableListView position

Поэтому я использую onGroupExpand для загрузки списка. Это работает, но я должен расширять себя группу с

expandableList.expandGroup(groupPosition); 

Проблема в том, что, когда я нажимаю на родителях, группа расширяется, но вид вернуться на первую позицию. То есть: я прокручиваю, я нажимаю на родителя, расширяю группу, просматриваю возврат к первому родительскому элементу, поэтому я должен снова прокрутить, чтобы увидеть группу, которую я нажимаю раньше.

Я стараюсь использовать expandableList.scrollTo(x,y); Но это не работает.

+0

Вы нашли решение проблемы с прокруткой? У меня есть аналогичная проблема ... –

+0

Нет, я этого не делал. Nonce, я работаю над чем-то более важным для моего приложения. Если вы найдете какое-либо решение, вы можете написать его здесь. Пожалуйста? Если я найду, я поставлю его здесь. – Nanis

+0

Попробуйте: listView.setSelectedGroup (groupPosition); – Derzu

ответ

4

У меня такая же проблема. Я нашел этот метод, который позволяет прокручивать на основе позиции элемента:

mList.smoothScrollToPosition(pos); 

Недостатком является я должен назвать это от моего groupClickListener() и для того, чтобы заставить его работать я должен поместить его внутри и он задерживает его частью секунды, иначе он ничего не сделает. Это означает, что мой список прокручивается в одну сторону, затем останавливается и прокручивается назад туда, где он был, что выглядит странно. Но это единственное, что я придумал до сих пор.

+0

да, я нашел то же самое, я забыл опубликовать решение. Спасибо, чтобы это сделать. – Nanis

+1

Зачем это нужно вызывать из Runnable? – Flynn81

Смежные вопросы