Heim > Fragen und Antworten > Hauptteil
巴扎黑2017-04-17 17:31:43
数据量大,要提高效率一般要考虑两点,一是网速,一是本地的加载速度。
我认为同时解决这两点的方法,应该用分页加载的设计:
1.接口需要上传page(加载第几页)
2.本地默认加载第一页,当下拉到最后的数据或者点击下一页等情况,可以再次发送请求,字段page=2,加载第二页,然后在展示。这类库有pulltorefreshlistview等。
3.本地用各种方式优化,比如listview holder,convertview等形式优化,布局尽量减少嵌套和尽量采用相对布局,对象不用后可以手动设为null加快回收或者自己gc等等
伊谢尔伦2017-04-17 17:31:43
先加载一定数量的数据,然后在最下方提示正在加载!
动态加载就是把放入adapter中的数据分好几次加载。在用户拖动view时再加载一定的数据
PHPz2017-04-17 17:31:43
1.假如图片比较多,一般都是加载缩略图,就是让后台配置比较小的图片,如果外接有第三方的图片储存的服务器,应该有自带图片处理的。
2.懒加载,预先加载前面10条数据。假如每页请求20条数据的话,第一页加载也是只加载前面10条/更少。先让用户看到屏幕上的数据。
3.检查内存泄漏/线程开的使用
PHP中文网2017-04-17 17:31:43
数据量大,跟服务端沟通一下,是不是应该考虑分页查询,如果不分页的话,每次请求返回的response很占带宽
数据能不能考虑存储在本地的数据库,这样网络的延时问题可以忽略
数据的异步加载,比如:采用时下流行的RxJava
一次展现,不要全部加载数据,分页加载,比如:楼上说的上拉加载
如果加载中的图片很多,那么可以考虑picasso或者glide的缓存机制