前言:昨天项目迭代增加一个功能,对一个View在用户看到的时候增加动画,该View是在list作为footerView添加进去的,需要判断一个view对于用户是否可见,也自己实践了一下,总结总结。
网上查到的方法,有一个提到重写view中“onWindowVisibilityChanged”的方法,来判断是否可见,具体如下:@Override
protected voidonWindowVisibilityChanged(intvisibility) {
super.onWindowVisibilityChanged(visibility);
if(visibility == View.VISIBLE){
//开始某些任务
if(!isCover()){
if(onViewVisibilityListener!=null){
onViewVisibilityListener.onVisible();
}
}
}else if(visibility ==INVISIBLE|| visibility ==GONE){
//停止某些任务
if(onViewVisibilityListener!=null){
onViewVisibilityListener.onInVisible();
}
}
}
ps:吐槽一下简书这个编辑器对于代码的规范化真的和屎一样,当然可能我自己没学会掌握~
大写的BUT,据我测试得出,