记录开发过程中遇到的问题(一)

988 阅读1分钟

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,进而出现了这个报错,虽然在用户使用过程中用户未能察觉,但还是要引以为戒