/**
* 局部更新数据,调用一次getView()方法;Google推荐的做法
*
* @param gridView 要更新的gridView
* @param position 要更新的位置
*/
public void notifyDataSetChanged(GridView gridView, int position) {
/**第一个可见的位置**/
int firstVisiblePosition = gridView.getFirstVisiblePosition();
/**最后一个可见的位置**/
int lastVisiblePosition = gridView.getLastVisiblePosition();
/**在看见范围内才更新,不可见的滑动后自动会调用getView方法更新**/
if (position >= firstVisiblePosition && position <= lastVisiblePosition) {
/**获取指定位置view对象**/
View view = gridView.getChildAt(position - firstVisiblePosition);
getView(position, view, gridView);
}
}
在GridView 或者 ListView中直接使用setOnItemClickListener获取条目的position,即可使用.
本文详细介绍了在GridView或ListView中局部更新数据的技巧,通过重写getView()方法实现高效的数据刷新,避免了不必要的全量更新,提高了应用性能。
1万+

被折叠的 条评论
为什么被折叠?



