在gridView中选择的item和获取焦点的item不是同一个的现象。通过View view = mGridView.getChildAt(selPos);
发现和获取焦点的item不是同一个,这个是为什么?
如果使用了 getChildAt(index).findViewById(...)设置值的话,滚动列表时值就会改变了。需要使用getFirstVisiblePosition()获取第一个可见位置firstPosition,再用当前的列表的Position-firstPosition,获取索引的差值tempPosition,再用getChildAt(tempPosition)取值。
也就是getChildAt(position-listView.getFirstVisiblePosition()).findViewById(...)去设置值。
发现和获取焦点的item不是同一个,这个是为什么?
如果使用了 getChildAt(index).findViewById(...)设置值的话,滚动列表时值就会改变了。需要使用getFirstVisiblePosition()获取第一个可见位置firstPosition,再用当前的列表的Position-firstPosition,获取索引的差值tempPosition,再用getChildAt(tempPosition)取值。
也就是getChildAt(position-listView.getFirstVisiblePosition()).findViewById(...)去设置值。