我一直在研究以下问题 2 天但没有白费。这是我第一次在这里发帖所以请多多包涵:)
问题:我的setOnChildClickListener
(在一个Activity
带有一个的内部ExpandableListView
)接收一个整体ViewHolder
作为View
参数,而不是单击的特定小部件。这让我Activity
对在ViewHolder
.
换句话说,如果用户单击项目内的任何小部件,只要该小部件在适配器中setOnChildClickListener
还没有设置,就会被触发。onclicklistener
我正在使用 ViewHolder,因为它被建议用于缓存目的。它位于ExpandableListView
适配器中,里面有一堆字段,如下所示:
private class ViewHolder {
ImageView image1;
TextView tvImageNumber;
LinearLayout tvLayoverImage;
//and many more
}
我的问题是,我如何让我Activity
知道在里面点击了哪个确切的元素,ViewHolder
这样我就可以做特定的事情,比如调出一个Fragment
?
笔记:
1)我的适配器正在完成大部分工作,包括为除此之外的大多数视图设置 onclicklisteners 2)我想以这种方式做事以确保我的活动处理片段,而不是适配器
如有必要,我很乐意提供更多详细信息。
先感谢您!!