在进行tv的编写过程中,遇到这样的情况,前一个界面还没有刷新完毕,然后快速点击到下一个界面。
在回退的时候,发现原有的数据不全,需要加载剩余数据。
这个时候需要使用onResume加载未加载完成的数据。很多时候简单处理,直接把数据刷新一遍。。。实际操作的时候发现了问题。
如果使用onResume全部加载数据,同时原来的界面呈现方式使用了listrow,那么就会有这样的问题:
onResume重新加载的时候,数据全部刷新,listrow的数据也可能会被清空,连续两次return后,会回到这个row,程序发现row不存在会报crash。
目前的解决办法就是:
onResume的时候只刷新未加载完的数据。这样就需要本地纪录数据刷新的情况,判断哪些数据未加载开始加载。我本地是顺序加载的,因此只需要纪录当前已刷新的list列,从下一列开始刷新即可。