Получить расширенный групповой вид ExpandableListView с помощью onGroupExpand

Я использую ExpandableListView, и я безуспешно пытаюсь переместить изображение при расширении группы (изображение является частью группового представления).

Вот мой код:

my_list_view.setOnGroupExpandListener(new OnGroupExpandListener() { @Override public void onGroupExpand(int groupPosition) { Toast.makeText(getBaseContext(), "Group " + my_list_view.getGroupId(groupPosition), Toast.LENGTH_SHORT).show(); } }); 

В основном моя проблема: как я могу получить доступ к расширенному представлению Group, когда единственной переменной, которую я могу использовать, является groupPosition?

Любой ответ, который вам нужен, должен быть адаптирован к адаптеру, не будет принят. Я уже пробовал это, и он не работает для моей проблемы. Мне нужно прослушать событие onGroupExpand.

Solutions Collecting From Web of "Получить расширенный групповой вид ExpandableListView с помощью onGroupExpand"

То, что я в конечном итоге сделал, это использование boolean isExpanded вы получаете бесплатно в getGroupView при создании пользовательского адаптера. Я смог заставить все работать так, как я хотел, вместо того, чтобы делать это в своей деятельности. Если вы сохраните контекст, который вы получаете в конструкторе, вы можете использовать его для получения ресурсов.

 @Override public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) { if (isExpanded) { mContext.getResources().getDrawable(R.drawable.arrow) doSomething(); } else { doSomethingElse(); } } 

Это намного проще, чем мой другой ответ (который в любом случае был немного глючным), поэтому забудьте об этом 🙂