Android bug 记录
来源:互联网 发布:烟台南山学院教务网络 编辑:程序博客网 时间:2024/05/16 10:06
华为 荣耀 6 上 popwindow 默认点击空白区域不会消失,给 popwindow 设置背景就好了
oppo 手机上,VideoView 在调用 start() 之后,立即 pause() 或者 在 setOnPreparedListener 的毁掉中 pause() 中都会导致黑屏,解决
mVideoView.start()mVideoView.setOnPreparedListener{ mVideoView.postDelayed({mVideoView.pause()}, 10)}
RecyclerView 上拉加载导致的数据重复,代码如下
ScrollListener
private void initialScrollListener() { recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override public void onScrollStateChanged(RecyclerView recyclerView, int newState) { LinearLayoutManager lm = (LinearLayoutManager) recyclerView.getLayoutManager(); int totalItemCount = recyclerView.getAdapter().getItemCount(); int lastVisibleItemPosition = lm.findLastVisibleItemPosition(); int visibleItemCount = recyclerView.getChildCount(); if (newState == RecyclerView.SCROLL_STATE_IDLE && lastVisibleItemPosition == totalItemCount - 1 && visibleItemCount > 0) { //加载更多 if (adapter != null && adapter.getItemCount() > 6) { KtAllCourseFragmentAgent.Companion.findByTag(AllCourseFragment.this, adapter.tag, page); } } } }); }
如上代码中,在实际运行的时候,发现 KtAllCourseFragmentAgent.Companion.findByTag(AllCourseFragment.this, adapter.tag, page); 这行代码,同时执行了不止一次,再看我添加数据的代码:
attach data
public void attach(ArrayList<CourseVo> courseVos, String tag, int page) { if (page == 0) { adapter.setCourseVos(courseVos); } else { if (this.page == page) { adapter.addCourseVos(courseVos); } } adapter.tag = tag; if (courseVos != null && !courseVos.isEmpty()) { this.page = page + 1; } }
adapter add data
public void addCourseVos(List<CourseVo> vos) { int start = courseVos.size(); courseVos.addAll(vos); notifyItemRangeInserted(start, vos.size());
以上代码最终导致了,数据的重复错乱。
解决办法代码:
synchronized (AllCourseFragment.this) { KtAllCourseFragmentAgent.Companion.findByTag(AllCourseFragment.this, adapter.tag, page); }
论 java 基础的重要性!
阅读全文
0 0
- [BUG记录] android动画
- Android bug记录
- Android bug记录
- Android bug 记录
- Android LOG记录 & BUG分析
- android开发bug调试记录
- BUG记录之Android开发
- android奇怪的bug记录
- Android开发常见BUG记录
- 【Android】记录Android MediaPlayer的两个bug
- Android Studio 使用中的相关“Bug”记录
- android studio2.1关联源码bug记录
- android studio 移植的bug解决记录
- Android 压力测试 (记录bug)
- 记录一个android SharedPreferences的bug
- 记录BUG
- bug 记录
- bug记录
- 用java实现快排
- eclipse不支持tomcat8.0版本解决
- yarn中的cgroup调度
- Revit明细表读取、将明细表数据存储到sql server数据库、python读取数据库
- 建学生表
- Android bug 记录
- centos 远程登录 最简单的 文件上传 下载
- java io操作
- hdu 3046 喜羊羊和灰太狼(最大流最小割初入)
- ganglia分布式服务器集群监控系统的汉化说明
- 线程池
- Qt5 text_Editor(三)
- Linux Shell之sort命令
- 【安全牛学习笔记】DNS协议隧道、DNS协议隧道-dns2tcp