我正在尝试使用可以单击的图像的GridView来触发各种事件。 GridView应该自动突出显示我按下的单元格。
问题在于,当实际按下正确的单元格时,高亮效果会显示在不同的单元格上。对于GridView中的大多数(但不是全部)行,无论实际按下哪个单元格,高亮都会出现在行的第一个单元格中。
导致这种情况的原因是什么?
答案 0 :(得分:0)
一些事情。要么你没有在传入的实际视图上执行findViewByIds。请检查您是否正在执行view.findViewById()并确保从getItem(int position)返回正确的对象。即不仅仅返回位置,尊重您的数据并实际返回对象。
答案 1 :(得分:0)
GridView会回收其内容,即位置0处的内容可以有多个值,具体取决于应用程序的状态//滚动等
GridView仅存储屏幕上当前可见的内容
您必须编辑适用于预期行为的适配器代码
请参阅:GridView get view by position, first child view different