Intereting Posts
Дополнительные намерения дублируются при использовании FLAG_UPDATE_CURRENT в PendingIntent при создании уведомлений об андроидах Приложение не запускается в визуальном студийном эмуляторе для Android в visual studio 2015 Какова продолжительность тоста LENGTH_LONG и LENGTH_SHORT Увеличьте количество сайтов на эмуляторе android sdk Перейдите к другому EditText, когда Soft Keyboard Next нажата на Android Фрагмент против пользовательского вида в Android Основной класс активности не найден, если реализует GooglePlayServicesClient.ConnectionCallbacks / OnConnectionFailedListener Как получить IP-адрес Wi-Fi-точки доступа в Android? Не удается получить название активности переднего плана только в Android Lollipop 5.0 Как я могу сделать ширину счетчика равной самой большой доступной ширине элемента Как создать файлы .docx и .xlsx на Android Обнаружение столкновений Pixel Perfect между пользовательским представлением и ImageView Как изменить тост-сообщение, которое появляется после успешной покупки продукта в биллинге в приложении GetExtractedText на неактивном предупреждении InputConnection на Android Meteor перезагружается бесконечно после повторного развертывания на сервере с помощью appcache

Получить расширенный групповой вид 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(); } } 

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