bugly错误
Attempt to invoke virtual method 'android.view.ViewPropertyAnimator android.view.View.animate()' on a null object referencecom.xxx.xxxxxxactivity.$3.onScrollStateChanged(xxxxx.java:164)
业务逻辑
用户滑动的时候悬浮按钮消失,停止滑动悬浮按钮出现
分析出现原因
既然是空指针很显然是无法拿到view,猜测用户在滚动没有完全停止的时候退出了界面,导致监听还在继续停止滚动后无法获取到view实例null报出的问题
解决方案(共两种)
- 使用Activity.isFishing来判断是否正在退出,将其动画代码包起来即可
- 重写onDestory() 写入recyclerview.removeOnScrollListener() 与recyclerview.addOnScrollListener() 务必成对出现
总结
这里犯了一个严重的错误,在addOnScrollListener添加的时候未能在退出回调及时removeOnScrollListener,进而出现了这个报错,虽然在用户使用过程中用户未能察觉,但还是要引以为戒